clap0107

[백준] 1075번 나누기 - 파이썬 본문

코딩테스트/부르트포스

[백준] 1075번 나누기 - 파이썬

clap0107 2023. 5. 25. 15:47
반응형

https://www.acmicpc.net/problem/1075

 

1075번: 나누기

첫째 줄에 N, 둘째 줄에 F가 주어진다. N은 100보다 크거나 같고, 2,000,000,000보다 작거나 같은 자연수이다. F는 100보다 작거나 같은 자연수이다.

www.acmicpc.net

풀이:

확인해줘야 하는 횟수가 총 100 이하이기 때문에, 일일이 확인해 주는 브루트포스로도 충분해 보였다. 어떻게 구현할지 생각하는 것까지는 쉬운 편이었는데 문자열을 정수형으로 변경해 주는 부분에서 까다로웠다. 파이썬이 지원하는 slicing을 사용하면 간단히 해결되는 문제였다. c++에 익숙해서 파이썬이 적응이 안 된다...

 

방법 1:

num = input()
divisor = int(input())
length = len(num)
num = int(num) - (int(num[length-2]) * 10 + int(num[length-1]))

while True:
    if num % divisor == 0:
        break
    num += 1

print(str(num)[length-2] + str(num)[length-1])

 

방법 2:

num = input()
divisor = int(input())
num = int(num[:-2] + '00')
while True:
    if num % divisor == 0:
        break
    num += 1
print(str(num)[-2:])
반응형
Comments