두 정수 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을 추가해서 두 자리로 만들어야 한다.
4
1000 3
23442 75
428392 17
32442 99
02
00
15
72
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int test_case = sc.nextInt(); // 테스트케이스
int n = 0;
int f = 0;
// 테스트케이스 반복시작
for(int T = 1; T<=test_case; T++) {
// 예외처리
do {
n = sc.nextInt();
f = sc.nextInt();
} // 조건이 참인동안 실행
while((n<=100)&&(n>=2000000000)&&(f>=100));
// n이 f로 한번에 나눠떨어지는 경우,
if(n%f==0) {
System.out.println(n%100);
}// n이 f로 한번에 나눠떨어지지 않는 경우,
else {
// 뒤 두자리를 최대한 작게 만들기위해 00으로 초기화
n -= (n % 100);
// 반복문 돌면서 작은 수로 나눠 떨어지게 만듬
for(int i = 0; ;i++) {
// 나눠 떨어지는 경우,
if(n%f==0) {
// 0도 출력하기위해 문자열로 변환
String value = String.valueOf(n);
// 총 길이 -2번째 ~ 총길이 n번째
String result = value.substring(value.length()-2,value.length());
System.out.println(result);
break;
}
// 나눠 떨어지지 않는 경우,
++n;
}
}
}
}
}