Yet Never Lose Faith

- Good to Great , Jim Collins

How To Preprocess Image Data 자세히보기

Algorithm

56th. CodeUp #1083 : [기초-종합] 3 6 9 게임의 왕이 되자!(설명)

Kellyyyy 2020. 12. 20. 20:44

PROBLEM.

 

 

[기초-종합] 3 6 9 게임의 왕이 되자!(설명)

C언어기초100제v1.2 : @컴퓨터과학사랑, 전국 정보(컴퓨터)교사 커뮤니티/연구회 - 학교 정보(컴퓨터)선생님들과 함께 수업/방과후학습/동아리활동 등을 통해 재미있게 배워보세요.  - 모든 내용

codeup.kr


IDEA.

- 입력값의 범위가 1~9 라고 명시되어있기 때문에 3의 배수 여부를 따져서 출력하면 된다!

- 하지만 만약 입력값이 10이상인 경우에는 3의 배수 여부만 따져서는 369게임 왕이 될 수 없다. 예를 들어 33 같은 경우에는 박수를 2번 쳐야하고, 13인 경우에는 3의 배수는 아니지만 박수를 쳐야하기 때문이다. 그래서 주어진 리스트의 원소 수를 셀 수 있는 counter모듈을 사용하여 풀이도 해보았다.


 

SOURCE1. 입력값이 1~9일 때

n = int(input())
i = 1
while i <= n :
	if i%3 == 0 :
		print('X', end=' ')
	else :
		print(i, end=' ')
	i += 1
 
 # 입력 : 9
 # 출력 : 1 2 X 4 5 X 7 8 X

SOURCE2. 입력값이 10이상일 때

from collections import Counter
n = int(input())
for i in range(1,n+1) :
  counter = Counter(str(i))
  if (counter['3'] > 0 or counter['6'] > 0 or counter['9']) :
    print('X' * (counter['3'] + counter['6'] + counter['9']), end=' ')
  else :
    print(i, end=' ')
 
 # 입력 : 34
 # 출력 : 1 2 X 4 5 X 7 8 X 10 11 12 X 14 15 X 17 18 X 20 21 22 X 24 25 X 27 28 X X X X XX X

 

Reference.

End.