문제
두 정수 N과 F가 주어진다. 지민이는 정수 N의 가장 뒤 두 자리를 적절히 바꿔서 N을 F로 나누어 떨어지게 만들려고 한다. 만약 가능한 것이 여러 가지이면, 뒤 두 자리를 가능하면 작게 만들려고 한다.
예를 들어, N=275이고, F=5이면, 답은 00이다. 200이 5로 나누어 떨어지기 때문이다. N=1021이고, F=11이면, 정답은 01인데, 1001이 11로 나누어 떨어지기 때문이다.
입력
첫째 줄에 N, 둘째 줄에 F가 주어진다. N은 100보다 크거나 같고, 2,000,000,000보다 작거나 같은 자연수이다. F는 100보다 작거나 같은 자연수이다.
출력
첫째 줄에 마지막 두 자리를 모두 출력한다. 한자리이면 앞에 0을 추가해서 두 자리로 만들어야 한다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
package backjoon1075;
import java.util.Scanner;
public class backjoon1075 {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner in = new Scanner(System.in);
int n = in.nextInt();
int f = in.nextInt();
int res = 0;
int check = 0;
n = n/100;
n = n*100;
while(n%f != 0)
{
n++;
res++;
}
if(res < 10)
System.out.printf("0%d",res);
else
System.out.printf("%d", res);
}
}
|
cs |
아까 문제에 비해서 굉장히 간단한 문제였다. 심지어는 숫자를 int형으로 받아와도 되는 문제였다.
이 알고리즘은 그냥 00 근처로 가서 나머지가 없게 만들어 달라고 했으니 뒤에 숫자 두 개를 나누기 연산을 통해 없애고, 곱하기 연산으로 00을 붙여 새 숫자를 만들었다. 그 후에 0으로 나누어 떨어지지 않을 때 계속 반복을 돌려서 숫자를 올려주었다. 그렇게 구한 답이 두 자리가 안되면 앞에 0을 붙여 출력하고 그게 아니라면 그냥 출력하면 되는 아주 간단한 문제였다.
'java' 카테고리의 다른 글
[java] 1152번 단어의 개수 (0) | 2023.09.27 |
---|---|
[java]1076번 저항 (0) | 2023.09.25 |
[java] 2010번 플러그 (0) | 2023.09.23 |
[java] 2525번 시계 (1) | 2023.05.26 |
[java]2588번 곱셈 (0) | 2023.05.26 |