본문 바로가기

전체 글

(320)
[프로그래머스] LV. 3(연속 펄스 부분 수열의 합)(java) [문제] [답안] class Solution { public long solution(int[] sequence) { long[][] dp = new long[2][sequence.length]; long max = 0; int[] sw = new int[]{ -1, 1 }; dp[0][0] = sequence[0]; dp[1][0] = sequence[0] * -1; max = Math.max(dp[0][0], dp[1][0]); for(int i = 0; i < 2; i++) { for(int j = 1; j < sequence.length; j++) { dp[i][j] = sequence[j] * sw[i] + (dp[i][j - 1] < 0 ? 0 : dp[i][j - 1]); sw[i] *= -..
[프로그래머스] LV. 0 (날짜 비교하기)(java) [문제] [답안] class Solution { public int solution(int[] date1, int[] date2) { int date1Days = getTotalDays(date1); int date2Days = getTotalDays(date2); return date1Days < date2Days ? 1 : 0; } public int getTotalDays(int[] date) { int result = 0; result += date[0] * 360; result += date[1] * 30; result += date[2]; return result; } } 출처 https://school.programmers.co.kr/learn/courses/30/lessons/181838 ..
[프로그래머스] LV. 0 (가까운 1 찾기)(java) [문제] [답안] class Solution { public int solution(int[] arr, int idx) { for (int i = idx;i < arr.length;i++) if (arr[i] == 1) return i; return -1; } } 출처 https://school.programmers.co.kr/learn/courses/30/lessons/181898 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr
[프로그래머스] LV. 0 (1로 만들기)(java) [문제] [답안] class Solution { public int solution(int[] num_list) { int answer = 0; for (int num : num_list) answer += getCount(num); return answer; } public int getCount(int num) { int result = 0; while (num > 1) { if (num % 2 == 0) num = num / 2; else num = (num - 1) / 2; result++; } return result; } } 출처 https://school.programmers.co.kr/learn/courses/30/lessons/181880 프로그래머스 코드 중심의 개발자 채용. 스택 기반..
[프로그래머스] LV. 0 (콜라츠 수열 만들기)(java) [문제] [답안] import java.util.*; class Solution { public int[] solution(int n) { ArrayList arrayList = new ArrayList(); int cnt = 0; while (n >= 1) { arrayList.add(n); if (n == 1) break; if (n % 2 == 0) n = n / 2; else n = 3 * n + 1; } int[] answer = new int[arrayList.size()]; for (int data : arrayList) answer[cnt++] = data; return answer; } } 출처 https://school.programmers.co.kr/learn/courses/30/le..
[프로그래머스] LV. 0 (x 사이의 개수)(java) [문제] [답안] class Solution { public int[] solution(String myString) { String[] result = myString.split("x"); int N = myString.charAt(myString.length() - 1) == 'x' ? result.length + 1 : result.length; int[] answer = new int[N]; for (int i = 0;i < result.length;i++) answer[i] = result[i].length(); return answer; } } 출처 https://school.programmers.co.kr/learn/courses/30/lessons/181867 프로그래머스 코드 중심의 개발..
[프로그래머스] LV. 0 (배열의 길이에 따라 다른 연산하기)(java) [문제] [답안] class Solution { public int[] solution(int[] arr, int n) { int idx = arr.length % 2 == 0 ? 1 : 0; for (int i = idx;i < arr.length;i += 2) arr[i] += n; return arr; } } 출처 https://school.programmers.co.kr/learn/courses/30/lessons/181854# 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr
[프로그래머스] LV. 0 (9로 나눈 나머지)(java) [문제] [답안] class Solution { public int solution(String number) { int answer = 0; for (char ch : number.toCharArray()) answer += ch - '0'; return answer % 9; } } 출처 https://school.programmers.co.kr/learn/courses/30/lessons/181914 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr