코딩테스트/CodeUp
[Python] CodeUp 기초 100제 6,082 3 6 9 게임의 왕이 되자
몰입하는로건
2024. 4. 18. 08:53
[문제 풀기 전 생각한 부분]
1. 입력을 받고
2. for문을 이용한 뒤
3. 3으로 나누어 떨어지면 되겠군
[my_code]
n = int(input()) # 사용자로부터 입력을 받고
for i in range(1,n+1): # 1부터 n까지 반복
if i % 3 ==0: # i를 3으로 나누었을 때, 나머지가 0이라면
print('X',end=' ') # X 출력
else: # 그 외
print(i,end=' ') # i 출력
[문제점]
- 처음에 9를 넣었는 데, 잘 되길래 제출 했더니 잘못된 풀이라고 한다.
- 그래서 n에 다른 값을 넣어보았더니 왠걸,,, 이게 10이하에만 통하는 거였다...
- 그러면 어떻게 할까 고민하던 중 그냥 그러면 각 자리별로 만들어주자라고 생각하였다 <- 이말은 아래 나옵니다.
[문제점 해결]
# 사용자로부터 숫자를 입력받습니다.
n = int(input())
# 1부터 'n'까지의 숫자를 반복합니다.
for i in range(1, n+1):
# 현재 숫자의 일의 자리 숫자가 3, 6, 또는 9인지 확인합니다.
if i % 10 == 3 or i % 10 == 6 or i % 10 == 9:
# 일의 자리 숫자가 3, 6, 또는 9인 경우, 'X'를 출력합니다.
print("X", end=' ')
else:
# 일의 자리 숫자가 3, 6, 9가 아닌 경우, 숫자 자체를 출력합니다.
print(i, end=' ')