반응형
나누기
시간 제한메모리 제한제출정답맞힌 사람정답 비율
2 초 | 128 MB | 16289 | 8709 | 7688 | 55.678% |
문제
두 정수 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
1000
3
예제 출력 1
02
예제 입력 2
2000000000
100
예제 출력 2
00
예제 입력 3
23442
75
예제 출력 3
00
예제 입력 4
428392
17
예제 출력 4
15
예제 입력 5
32442
99
예제 출력 5
72
문제 풀이
#1. while문 해설법
a = input()
b = int(input())
a= int(a[:-2]+"00")
while True:
if a % b ==0:
break
a+=1
print(str(a)[-2:])
#2. for문 해설법
a = input()
b = int(input())
#맨 뒷자리를 00으로 변경
a = int(a[:-2] +'00')
#00부터 99까지 1씩 증가하며 나눠지는 수 찾기
for i in range(100):
if((a+i) % b ==0):
#0~9사이인경우 앞에 0붙여서 출력
if(0<=i<=9):
print('0'+str(i))
break
#2번 출력되지 않게 break
else:
print(i)
break
즉 for문이나 while문이나 문제의 핵심은
1. 뒤의 자릿수 2개를 "00"으로 변환한 후
2. 그 00의 값을 99까지 1씩 증가시키며
3. b 값으로 나눠지는 첫번째 값을 찾고 멈춘 후
4. 그 값을 출력하는 것이다.
'프로그래밍 > 백준' 카테고리의 다른 글
[백준알고리즘] 백준 브론즈5 - 파이썬 문제 풀이 모음 (0) | 2022.10.04 |
---|---|
[알고리즘] 백준 10809번 파이썬(python) - 풀이 (1) | 2022.10.03 |
[알고리즘]백준 8545번 파이썬(python) - 2가지 풀이법 (0) | 2022.10.01 |
[알고리즘] 백준 2738번 파이썬 (1) | 2022.09.30 |
[알고리즘] 백준(baekjoon) 1145번 파이썬 (0) | 2022.09.29 |