하이루 ~
오늘은 급하게 뭐 좀 먹는다고 시간이 늦어버린 관계로 브론즈2 문제를 풀었다.


일단 나는 처음엔 if-else문을 사용하려 했으나 매우 비효율적인 코드가 나올 것 같아 고민을 했다.
그러다 문득 딕셔너리의 존재를 떠올렸고 풀기 시작했다.
그렇게 정답이 나온 코드는 아래와 같은데
백준에선 계속 틀렸다고 나왔다.
정답은 맞는데 시간이 2초가 넘는 코드인 것인가 ?
firstCol = input()
secondCol = input()
thirdCol = input()
Color = {'black' : 0, 'brown' : 1, 'red' : 2, 'orange' : 3,
'yellow' : 4, 'green' : 5, 'blue' : 6, 'violet' : 7, 'grey' : 8, 'white' : 9}
j = 1
num3 = 1
num2 = 0
num1 = 0
if thirdCol == 'black' :
print(Color[firstCol], Color[secondCol], 1, sep = '')
else :
print(Color[firstCol], Color[secondCol], '0' * Color[thirdCol], sep = '')
그렇게 다른 사람들의 코드를 참고 했더니
print문 한 번으로도 가능하다는 것을 알았다 !!
그래서 이를 적용하고 아래와 같이 풀었더니
정답이 떴다.
firstCol = input()
secondCol = input()
thirdCol = input()
Color = {'black' : 0, 'brown' : 1, 'red' : 2, 'orange' : 3,
'yellow' : 4, 'green' : 5, 'blue' : 6, 'violet' : 7, 'grey' : 8, 'white' : 9}
j = 1
num3 = 1
num2 = 0
num1 = 0
print((10 * Color[firstCol] + Color[secondCol]) * (10 ** Color[thirdCol]))
헤헷.
정답이 나왔군.
- 첫 번째 입력 값을 10의 자리로 만들어 주고
- 두 번째 입력 값을 1의 자리 그대로 해서 더해주고 마지막으로
- 10의 제곱 형태로 해당 값의 개수만큼 제곱해서 더해주면 끝!!!

헤헤. 참고한 문제보다 내가 작성한 코드가 시간이 젤 적게 걸린당.ㅎㅎㅎㅎ
기분이 조크나하 ~~~
끝 - !