출처: https://meyouus.tistory.com/64 [정보 공유 - For Me For You For Us]
본문으로 바로가기

 

이번 문제는 for문으로 풀 수 있을 것 같다. 물론 print로 숫자 하나씩 대입하는 방법도 있다. 우선 다음과 같이 풀었다:

import sys

N = int(sys.stdin.readline())

num1 = 1
for i in range(9):
	print(str(N) + ' * ' + str(num1) + ' = ' + str(N*num1))
	num += 1

 

하지만 또 앞서 언급했던 바와 같이, 이렇게도 코드를 짤 수 있다:

import sys

N = int(sys.stdin.readline())

print(str(N) + ' * ' + '1 = ' + str(N*1))
print(str(N) + ' * ' + '2 = ' + str(N*2))
print(str(N) + ' * ' + '3 = ' + str(N*3))
print(str(N) + ' * ' + '4 = ' + str(N*4))
print(str(N) + ' * ' + '5 = ' + str(N*5))
print(str(N) + ' * ' + '6 = ' + str(N*6))
print(str(N) + ' * ' + '7 = ' + str(N*7))
print(str(N) + ' * ' + '8 = ' + str(N*8))
print(str(N) + ' * ' + '9 = ' + str(N*9))

하지만 이렇게 하게 되면 다음과 같은 결과를 보게 된다:

(출력 형식이 잘못되었습니다 - 문제풀이는 맞는데 공백 같은 출력형식이 잘못 됐을 경우에 나타난다. 나의 경우 공백 하나를 잘못 넣었다.)

시간은 72 ms → 64 ms로 줄어들었지만, 코드 길이는 149 B → 420 B 로 늘어났다.

이렇게 짧은 코드는 크게 상관 없겠지만 큰 코드가 될 경우는 코드 길이도 줄이는 것이 중요할 것이다.