728x90
s를 n으로 나눈 몫의 값이 result 성분들의 최소값이고
나머지는 최소값보다 1큰 성분들의 개수이다.
대충 아무거나 경우의 수를 만들어서
이 명제가 맞다고 가정하고 풀엇고 정답이었다.
이런 규칙찾는 문제는 100%확신을 가지고 풀 수는 없는 것 같다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | public int[] solution(int n, int s) { int[] answer = new int[n]; int min = s / n; if (min < 1) return new int[] { -1 }; int rest = s % n; // min+1개수 int input = 0; for (int i = n - 1; i >= 0; i--) { input = min; if (rest-- > 0) input++; answer[i] = input; } return answer; } | cs |
'알고리즘 풀이 > 프로그래머스' 카테고리의 다른 글
프로그래머스 - 입국심사 (이분탐색) (0) | 2019.11.29 |
---|---|
프로그래머스 - 하노이의 탑 (재귀함수) (0) | 2019.11.28 |
프로그래머스 - 줄 서는 방법 (규칙 찾기) (0) | 2019.11.28 |
프로그래머스 - 야근 지수 (구현?) (0) | 2019.11.28 |
프로그래머스 - 멀리 뛰기 (DP) (0) | 2019.11.28 |