개발일기

백준 2052번 파이썬 풀이 : 지수 연산 본문

알고리즘 문제풀이/백준

백준 2052번 파이썬 풀이 : 지수 연산

한민기 2021. 9. 25. 19:03
반응형

문제 링크 : https://www.acmicpc.net/problem/2052

 

2052번: 지수연산

자연수 N(1≤N≤250)이 주어졌을 때, 2의 -N승을 계산하는 프로그램을 작성하시오. 즉, 1/(2^N)을 계산하는 것이다.

www.acmicpc.net

문제

자연수 N(1≤N≤250)이 주어졌을 때, 2의 -N승을 계산하는 프로그램을 작성하시오. 즉, 1/(2^N)을 계산하는 것이다.

입력

첫째 줄에 N이 주어진다.

출력

첫째 줄에 답을 출력한다. 답을 출력할 때에는 예제와 같이 0.xyz… 의 형식으로 출력하며, 뒤에 0을 덧붙이지 않는다.

 

 

# 문제 풀이

얼핏 보면 쉬운 문제다.

 

당연히 print(1 / 2 ** int(input())) 을 하게 되면 간단하게 계산이 된다.

 

하지만 위의 경우는 10 ** (-4) 보다 작은 분수는 괜찮지만 그거보다 작은 분수는 1e-05 방식으로 저장이 되기 때문에 따로 처리해줘야 문제를 맞출 수 있다.

 

1
2
3
4
5
6
7
8
9
= int(input())
 
= "%.300f" % 2 ** - n
end = len(s)
for i in range(end-11-1):
    if s[i] != '0':
        end = i
        break
print(s[:end+1])
cs

 

반응형
Comments