프로그래밍 문제 풀이/코드업(파이썬)

코드업[CodeUp] Python 기초 100제 [6083번]

태은코딩 2024. 1. 12. 13:08

6083 : [기초-종합] 빛 섞어 색 만들기(설명)(py)

문제설명
빨강(red), 초록(green), 파랑(blue) 빛을 섞어 여러 가지 다른 색 빛을 만들어 내려고 한다.

빨강(r), 초록(g), 파랑(b) 각 빛의 가짓수가 주어질 때,
주어진 rgb 빛들을 섞어 만들 수 있는 모든 경우의 조합(r g b)과 만들 수 있는 색의 가짓 수를 계산해보자.  

 

입력값
빨녹파(r, g, b) 각 빛의 가짓수가 공백을 두고 입력된다.
예를 들어, 3 3 3 은 빨녹파 빛에 대해서 각각 0~2까지 3가지 색이 있음을 의미한다.
0 <= r,g,b <= 127
출력값
만들 수 있는 rgb 색의 정보를 오름차순(계단을 올라가는 순, 12345... abcde..., 가나다라마...)으로
줄을 바꿔 모두 출력하고, 마지막에 그 개수를 출력한다.

 

입력 예시
2 2 2
출력 예시
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

 

정답 및 가능한 정답

a,b,c=map(int,input().split())
for i in range(a):
    for j in range(b):
        for k in range(c):
            print(i,j,k)
print(a*b*c)
a,b,c=map(int,input().split())
count=0
for i in range(a):
    for j in range(b):
        for k in range(c):
            print(i,j,k)
            count+=1
print(count)

 

해설

map() 내장함수를 이용해 int 자료형으로 3가지 변수를 입력받고
for 문을 3중으로 작성하여 각각 range(a), range(b), range(c)의 범위로 경우의 수를 계산할 수 있다.
마지막에 그 개수를 출력하라 했으니 print(a*b*c)도 출력한다. 
아니면 새로운 변수 count를 추가해 실행마다 1씩 늘게 하여 계산하는 것도 가능하다.