문제 출처
알고리즘 분류
- 수학
- 그리디 알고리즘
풀이
N을 P로 나눈 몫을 S, 나머지를 R이라고 한다.
R의 개수만큼 S + 1을 곱하고 P - R의 개수만큼 S를 곱한 값이 받을 수 있는 사탕의 최대 개수가 된다.
코드
더보기
import java.io.*;
import java.util.*;
public class Solution {
static long Answer;
public static void init() {
Answer = 0;
}
public static void settings(long N, long P) {
long S = N / P;
long R = N % P;
Answer = (long) Math.pow(S + 1, R) * (long) Math.pow(S, P - R);
}
public static void find_Answer(int Case) {
System.out.println("#" + Case + " " + Answer);
}
public static void input() throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int T = Integer.parseInt(br.readLine());
for (int i = 1; i <= T; i++) {
init();
String[] input = br.readLine().split(" ");
long N = Long.parseLong(input[0]);
long P = Long.parseLong(input[1]);
settings(N, P);
find_Answer(i);
}
}
public static void main(String[] args) throws IOException {
input();
}
}
'SWEA > D5' 카테고리의 다른 글
[SWEA/D5] SWEA 1256 [S/W 문제해결 응용] 6일차 - K번째 접미어(Java) (0) | 2024.06.30 |
---|---|
[SWEA/D5] SWEA 1247 [S/W 문제해결 응용] 3일차 - 최적 경로(Java) (0) | 2024.06.29 |