티스토리 뷰

문제출처 - https://swexpertacademy.com/main/code/problem/problemDetail.do

 

SW Expert Academy

SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!

swexpertacademy.com

n = int(input())
answer = []

for num in range(1, n+1):
    strNum = str(num)
    temp = ""

    for i in range(len(strNum)):
        if strNum[i] == '3' or strNum[i] == '6' or strNum[i] == '9':
            temp += '-'

    if len(temp) == 0:  # 369 없으면
        answer.append(num)
    else:
        answer.append(temp)

print(' '.join(map(str,answer)))

설명

 

입력받은 값만큼 for문을 돌면서

 

int형 num을 str형으로 바꾸고 str(num)의 각 자리값을 탐색하면서 369가 나오면 '-'를 추가한다.

 

369가 없으면 원래의 num값을 정답에 추가하고 있으면 나온 개수만큼 '-'를 정답에 추가한다.

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/11   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
글 보관함