프로그래머스(자바)
직사각형의 넓이 구하기 → 열(column)로 접근하고 싶은 경우★
열(column)로만 접근하고 싶은 경우 직가각형의 넓이 구하기 public int solution(int[][] dots) { int min_x=Integer.MAX_VALUE; int min_y=Integer.MAX_VALUE; int max_x= Integer.MIN_VALUE; int max_y= Integer.MIN_VALUE; for(int i=0; ix) min_x=x; if(max_xy) min_y=y; if(max_y
외계어사전 → String[ ] 배열의 정렬, 문자열 내의 정렬★★
나의 풀이 import java.util.*; import java.util.stream.Collectors; import java.util.stream.Stream; class Solution { public int solution(String[] spell, String[] dic) { Arrays.sort(spell); System.out.println(Arrays.toString(spell)); String str =""; for(int i=0; i s.chars().sorted().mapToObj(i -> String.valueOf((char) i)).collect(Collectors.joining())).collect(Collectors.toList()).contains(Arrays.strea..
구슬을 나누는 경우의 수→순수(?) 조합 계산★★
다른 사람의 풀이 class Solution { public long solution(int balls, int share) { share = Math.min(balls - share, share); if (share == 0) return 1; long result = solution(balls - 1, share - 1); result *= balls; result /= share; return result; } } ▶ 원리는 아래의 예시와 같다.
문자열 계산하기★★→ 마법의 Integer::parseInt
다른 사람의 풀이 import java.util.Arrays; class Solution { public int solution(String myString) { return Arrays.stream(myString.replaceAll("- ", "-").replaceAll("[+] ", "").trim().split(" ")).mapToInt(Integer::parseInt).sum(); } } ▶ "- "를 "-"로 바꾸는 작업은 -를 숫자에 붙이려는 목적이다. ▶ mapToInt(Integer::parseInt) → String타입의 숫자를 int타입의 숫자로으로 바꾼다!!! ▶ 중요한 점은 mapToInt(Integer::parseInt)를 사용하는 경우 "-3"문자열도 -3숫자로 바뀌준다. ▶ ..