빨강(red), 초록(green), 파랑(blue) 빛을 섞어 여러 가지 빛의 색을 만들어 내려고 한다.
빨강(r), 초록(g), 파랑(b) 각각의 빛의 개수가 주어질 때,
(빛의 강약에 따라 0 ~ n-1 까지 n가지의 빛 색깔을 만들 수 있다.)
주어진 rgb 빛들을 다르게 섞어 만들 수 있는 모든 경우의 조합(r g b)과 총 가짓 수를 계산해보자.
입력
빨녹파(r, g, b) 각 빛의 강약에 따른 가짓수(0 ~ 128))가 공백을 사이에 두고 입력된다. 예를 들어, 3 3 3 은 각 색깔 빛에 대해서 그 강약에 따라 0~2까지 3가지의 색이 있음을 의미한다.
2 2 2
출력
만들 수 있는 rgb 색의 정보를 오름차순(계단을 올라가는 순, 12345... abcde..., 가나다라마...)으로 줄을 바꿔 모두 출력하고, 마지막에 그 개수를 출력한다.
0 0 0
0 0 1
0 1 0
0 1 1
1 0 0
1 0 1
1 1 0
1 1 1
8
<풀이>
더보기
내가 쓴 풀이
red, green, blue = map(int, input().split())
for r in range(0, red):
for g in range(0, green):
for b in range(0, blue):
print(r, g, b)
print(red*green*blue)
강의 풀이
r, g, b = map(int, input().split())
count = 0
for i in range(r):
for j in range(g):
for k in range(b):
print(i, j, k)
count += 1
print(count)
<풀이 비교>
경우의 수를 세는 거라 그냥 다 곱했는데 카운트를 세는 식으로 해야 했구나,,
그리고 0부터 입력한 수 전까지 반복하는 거니까 그냥 range로 써도 됐었네 ㅎㅎㅎ
'Python > CodeUp' 카테고리의 다른 글
코드업 기초 100제 86번 - 그림 파일 저장용량 계산하기 (0) | 2021.11.22 |
---|---|
코드업 기초 100제 85번 - 소리 파일 저장용량 계산하기 (0) | 2021.11.22 |
코드업 기초 100제 83번 - 3 6 9 게임의 왕이 되자 (0) | 2021.11.22 |
코드업 기초 100제 82번 - 16진수 구구단 (0) | 2021.11.22 |
코드업 기초 100제 81번 - 주사위를 2개 던지면? (0) | 2021.11.22 |