프로그래머스
-
[자바(JAVA)] 두 개 뽑아서 더하기 / HashSet, TreeSet프로그래머스/자바(JAVA) 2023. 8. 28. 09:44
✅ 내 풀이 import java.util.HashSet; import java.util.Set; import java.util.Collections; import java.util.List; import java.util.ArrayList; class Solution { public int[] solution(int[] numbers) { Set answer = new HashSet(); for(int i = 0; i < numbers.length; i++) { for(int j = i + 1; j < numbers.length; j++) { answer.add(numbers[i] + numbers[j]); } } List sortedList = new ArrayList(answer); Collecti..
-
[자바(JAVA)] 크기가 작은 부분문자열- 런타임오류프로그래머스/자바(JAVA) 2023. 8. 21. 10:03
https://school.programmers.co.kr/learn/courses/30/lessons/147355 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 내 코드 class Solution { public int solution(String t, String p) { int answer = 0; int pInt = Integer.parseInt(p); int pLen = p.length(); for (int i = 0; i
-
[자바(JAVA)] 문자열로 변환/ valueOf()와 perse()의 공통점과 차이점프로그래머스/자바(JAVA) 2023. 8. 21. 00:40
https://school.programmers.co.kr/learn/courses/30/lessons/181845 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr ✅ 내 풀이 class Solution { public String solution(int n) { String answer = String.valueOf(n); return answer; } } 이 문제는 단순한 형태지만 이전부터 궁금했던 valueOf()와 perse()의 공통점과 차이점을 알아보려고 한다. 이 두 메서드는 다른 클래스에서 제공되며, 각각의 특징과 사용 가능한 자료형의 형태가..
-
[자바(JAVA)] 정수 내림차순으로 배치하기. PriorityQueue<Long>프로그래머스/자바(JAVA) 2023. 8. 18. 15:51
https://school.programmers.co.kr/learn/courses/30/lessons/12933 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr ✅ 내 풀이 public long solution(long n) { ArrayList temp = new ArrayList(); while(n > 0){ temp.add((int)(n % 10)); n /= 10; } Collections.sort(temp, Collections.reverseOrder()); StringBuilder result = new StringBuilder(); for (..
-
[자바(JAVA)] 문자열 뒤집기, StringBuilder, setCharAt(index, newChar)프로그래머스/자바(JAVA) 2023. 8. 16. 19:32
https://school.programmers.co.kr/learn/courses/30/lessons/181905 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 이 문제는 매개변수로 입력받은 String 문자열중 특정 인덱스 구간만 뒤집어서 출력하는것이다. 먼저 문자열의 변경이 필요하기 때문에 나는 변수로 StringBuilder를 사용하기로 했고, 문자열에 내제된 메서드중에 이 문제처럼 특정 인덱스 구간만 변경할 수 있는지 찾아보았다. 그리고 아래와 같이 코드를 작성했다. ✅ 내 풀이 class Solution { public String soluti..
-
[자바(JAVA)] 수열과 구간 쿼리 3 / ArrayList<>(), Collections.swap()프로그래머스/자바(JAVA) 2023. 8. 15. 16:42
https://school.programmers.co.kr/learn/courses/30/lessons/181924 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr ✅ 내 풀이 import java.util.ArrayList; import java.util.Arrays; import java.util.List; class Solution { public int[] solution(int[] arr, int[][] queries) { ArrayList transArr = new ArrayList(); for(int a: arr){ transArr.add(a)..
-
[자바(JAVA)] 피자 나눠먹기(1) / Math.ceil() 로 올림처리 하기프로그래머스/자바(JAVA) 2023. 8. 3. 17:19
내 코드 class Solution { public int solution(int n) { return (int) Math.ceil(n / 7.0); } } [풀이] 피자를 n명이 적어도 1조각씩 먹는다. 피자는 한판에 7조각이다. 그렇다면 n명이 최소 1조각씩 먹는다고 했을 때는 n * 1 조각이 된다. 한 판에 7조각이니까 총 몇판이 필요한지 확인한다면 n / 7 이 된다. 하지만 8조각을 먹으려면 무조건 2판을 사야하기 때문에 나머지가 발생할 경우 무조건 올림처리를 진행하면 된다고 생각했다. 따라서 Math.ceil( n / 7.0); 을 진행했으며, 반환값이 int라서 (int)로 형변환도 진행했다. double -> int 형변환시 비용이 무시하지 못할 정도의 차이로 발생하는지는 모르겠다.
-
[자바(JAVA)] 홀짝에 따라 다른 값 반환하기 / IntStream.rangeClosed프로그래머스/자바(JAVA) 2023. 7. 2. 22:47
✅ 내 답 import java.util.stream.IntStream; class Solution { public int solution(int n) { if (n % 2 == 1) { // n이 홀수인 경우 return IntStream.rangeClosed(1, n) .filter(i -> i % 2 == 1) .sum(); } else { // n이 짝수인 경우 return IntStream.rangeClosed(2, n) .filter(i -> i % 2 == 0) .map(i -> i * i) .sum(); } } } IntStream.rangeClosed(start, end) 메서드는 start와 end 값을 포함하는 정수 범위의 스트림을 생성하는 역할을 합니다. 즉, start부터 end까..