Java
javasciprt - 후위연산자 (postfix) 연산 stack
javasciprt - 후위연산자 (postfix) 연산 stack
2021.08.17문제풀이 해당 문제는 문자열로 한줄을 받아서 for loop 을 돌아 하나씩 문자열을 확인 한다. 해당 문자열이 숫자면 스택에 push 하고 연산자를 만나면 스택에서 두개의 숫자를 pop 한다. 처음 꺼낸 숫자가 변수 lt 두번째 꺼낸숫자를 rt 라고 하겠다. 왼쪽과 오른쪽의 순서도 중요하다 나누기나 빼기에서 값이 달라질 수 있음 그런다음 switch case 문을 통하여 연산해주면된다. function solution(problem) { const stack = []; for (x of problem) { if (Number.isInteger(+x)) stack.push(+x); else { const rt = stack.pop(); const lt = stack.pop(); switch (x) { c..
java - 최대 길이 연속부분수열 (투포인트)
java - 최대 길이 연속부분수열 (투포인트)
2021.07.30import java.util.Scanner; public class MaximumLengthContinuousSubsequence { public static int solution(int n, int k, int[] bins) { int answer = 0, lt = 0, convertCnt = 0; for (int rt = 0; rt k) { if (bins[lt] == 0) convertCnt--; lt++; } answer = Math.max(answer, rt - lt + 1); } return answer; } public static void main(String[] arg..
java - 연속된 자연수의 합 (투포인터)
java - 연속된 자연수의 합 (투포인터)
2021.07.29import java.util.Scanner; public class ConsecutiveNaturalNumber { public static int solution(int n) { int cnt = 0, lt = 0, sum = 0; int[] nums = new int[n / 2 + 1]; for (int i = 0; i = n) { sum -= nums[lt++]; if (sum == n) cnt++; } } return cnt; } public static void main..
java - 최대 매출(슬라이딩 윈도우)
java - 최대 매출(슬라이딩 윈도우)
2021.07.29import java.util.Scanner; // 슬라이딩 윈도우 public class MaximumRevenue { public static int solution(int k, int[] incomes) { int sum = 0, lt = 0, rt = 0, max = 0; while (rt max) max = sum; sum -= incomes[lt++]; sum += incomes[rt++]; } return max; } public static void main(String[] args) { Scanner in = new Scanner(System.in);..
java - 두배열 합치기(Two pointer)
java - 두배열 합치기(Two pointer)
2021.07.27import java.util.ArrayList; import java.util.Scanner; public class CombineTwoArrays { public static ArrayList solution(int[] arr1, int[] arr2) { int p1 = 0, p2 = 0; ArrayList answer = new ArrayList(); while (p1 < arr1.length && p2 < arr2.length) { if (arr1[p1] < arr2[p2]) answer.add(arr1[p1++]); else answer.add(arr2[p2++]); } for (int i=p1; i
java - 임시반장 정하기(배열)
java - 임시반장 정하기(배열)
2021.07.26) import java.util.Scanner; public class AppointingTempLeader { public static int solution(int n, int[][] students) { int answer = 0, max = Integer.MIN_VALUE; for (int i = 1; i
java - 격자판 최대합 (배열)
java - 격자판 최대합 (배열)
2021.07.25import java.util.Scanner; public class SumOfGrating { public static int solution(int n, int[][] grating) { int answer = Integer.MIN_VALUE; int sumRow, sumCol; for (int i = 0; i < n; i++) { sumRow=sumCol=0; for (int j = 0; j < n; j++) { sumRow += grating[i][j]; sumCol += grating[j][i]; } answer = Math.max(answer, sumRow); answer = Math.max(answer, sumCol); } int diagonalSum = 0, reverseDiagonalSu..
java - 숫자만 추출(아스키 코드)
java - 숫자만 추출(아스키 코드)
2021.07.18import java.util.Scanner; public class ExtractOnlyNumber { public static long solution(String s){ long answer = 0; for (char x: s.toCharArray()) { if (x >= 48 && x
Java - 유효한 팰린드롬 (정규식)
Java - 유효한 팰린드롬 (정규식)
2021.07.18import java.util.Scanner; public class EffectivePalindrome { public static String solution(String s) { String answer = "NO"; s = s.toUpperCase().replaceAll("[^A-Z]", ""); String temp = new StringBuilder(s).reverse().toString(); if (s.equals(temp)) { answer = "YES"; } return answer; } public static void main(String[] args) { Scanner in = new Scanner(System.in); String s = in.nextLine(); System.ou..
Spring - Application Context 와 @Bean
Spring - Application Context 와 @Bean
2021.07.16package hello.core; import hello.core.dicount.DiscountPolicy; import hello.core.dicount.FixDiscountPolicy; import hello.core.dicount.RateDiscountPolicy; import hello.core.member.MemberRepository; import hello.core.member.MemberService; import hello.core.member.MemberServiceImpl; import hello.core.member.MemoryMemberRepository; import hello.core.order.OrderService; import hello.core.order.OrderSe..
Spring boot 시작하기
Spring boot 시작하기
2021.07.08Spring boot 시작하기 프로젝트 생성 사전 준비물 Java 11 설치 IDE: IntelliJ 또는 Eclipse 설치 주의 가급적 JDK 11 버전을 설치해주세요. 다른 버전을 설치하면 정상 동작하지 않을 가능성이 높습니다. 스프링 부트 스타터 사이트로 이동해서 스프링 프로젝트 생성 https://start.spring.io project project 는 필요한 라이브러리를 땡겨주고 빌드하는 라이프 사이클 까지 관리해주는 것들 입니다. 과거에는 Maven project를 많이 사용했지만 요즘에는 대부분 Gradle Project를 사용합니다. Language java Spring Boot SNAPSHOT - 현재 만들고 있는 버전 M1 - 정식 출시 되지않은 버전 그것들을 피해서 선택합니다. ..
java 기본 자료형 정리
java 기본 자료형 정리
2021.07.08기본 자료형 자바에는 '기본 자료형(Primitive Types)'이 있습니다. 가장 기본이 되는 자료형들입니다. TypeBitsRange of Values byte 8bits -2^7 ~ 2^7-1 (-128 ~ 127) short 16bits -2^15 ~ 2^15-1 (-32768 ~ 32767) int 32bits -2^31 ~ 2^31-1 (-2147483648 ~ 2147483647) long 64bits -2^63 ~ 2^63-1 (-9223372036854775808 ~ 9223372036854775807) float 32bits *single-precision 32-bit IEEE 754 floating point double 64bits *double-precision 64-bit IE..