반응형
[ Contents ]
1. 문제 (링크 참조)
2. 문제 풀이
1) 친구에게 n1 = 3*n0 계산을 하라고 한 뒤, n1이 짝수인지 홀수인지를 말해달라고 한다.
2) n1이 짝수라면, n2 = n1/2를, 홀수라면 n2 = (n1+1)/2를 계산해달라고 한다.
3) n3 = 3*n2의 계산을 부탁한다.
4) 친구에게 n4 = n3/9를 계산한 뒤, 그 값을 말해달라고 한다. (n4는 나눗셈의 몫이다)
5) n1이 짝수였다면, n0 = 2*n4로, 홀수였다면, n0 = 2*n4+1로 처음 친구가 생각한 숫자를 맞출 수 있다.
위 순서대로 그대로 구현합니다.
3. 코드
import sys
input = sys.stdin.readline
i = 1
while True:
n0 = int(input())
if n0 == 0:
break
n1 = 3*n0
n2 = (n1+1)//2 if n1%2 else n1//2
n3 = 3*n2
n4 = n3//9
if n0 == 2*n4:
print(f"{i}. even {n4}")
else:
print(f"{i}. odd {n4}")
i += 1
반응형
'Algorithm' 카테고리의 다른 글
[구현/수학] 백준 5217 쌍의 합 - 파이썬(Python) (0) | 2023.02.11 |
---|---|
[구현/수학] 백준 3029 경고 - 파이썬(Python) (0) | 2023.02.10 |
[구현/수학] 백준 6378 디지털 루트 - 파이썬(Python) (0) | 2023.02.08 |
[구현/수학] 백준 2997 네 번째 수 - 파이썬(Python) (0) | 2023.02.07 |
[구현/수학] 백준 4880 다음수 - 파이썬(Python) (1) | 2023.02.06 |
댓글