본문 바로가기

알고리즘 (Python)/코드업 기초 100제

[CodeUp] 코드업 기초 100제 1084번 풀이 - 파이썬(python)

728x90
반응형

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

시간 제한 : 1초 메모리 제한 : 128 MB

 


 

문제 설명

 

빨강(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가지의 색이 있음을 의미한다.

출력

 

만들 수 있는 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(0, a):
    for j in range(0, b):
        for k in range(0, c):
            print(i,j,k)

print(a*b*c)

모범 답안

 

a,b,c=input().split()

R=int(a)
G=int(b)
B=int(c)

c=0
for i in range(R) :
    for j in range(G) :
        for k in range(B) :
            c+=1
            print(i, j, k)

print(c)

해설

 

세 정수 a, b, c를 int형으로 입력받습니다.
for 반복문 3개를 중첩하여 각각 i, j, k를 0부터 a, b, c까지 출력해줍니다.
728x90
반응형