이 문제는 1 부터 n까지의 수의 합을 구하는 문제이다. 이 문제도 간단하다. n까지의 list를 range를 통해서 만들고, 그 list에 n을 append 시키고, sum function을 통해 구했다:
import sys
n = int(sys.stdin.readline())
list1 = list(range(n))
list1.append(n)
print(sum(n))
맞추긴 했으나, 다른 방법으로 풀 수도 있지 않을까 싶었따. 1 부터 n이면, n까지의 for문을 사용하면 되지 않을까? 다음과 같은 방식으로도 해보았다:
import sys
n = int(sys.stdin.readline())
num = 1
list1 = []
for i in range(n):
list.append(num)
num += 1
print(sum(list1))
하지만 다음과 같은 결과가 나왔다:
시간도 64 ms → 68 ms로 늘어났고, 코드 길이도 99 B → 133 B 로 늘어났다. 따라서 왠만하면 이 문제는 처음에 푼 방법으로 푸는게 나을 듯 하다.
'알고리즘 테스트 > 백준 문제풀이 및 해설' 카테고리의 다른 글
<백준 문제풀이: 2741번> 파이썬 - N 찍기 (0) | 2020.10.21 |
---|---|
<백준 문제풀이 - 15552번> 파이썬 - 빠른 A+B (0) | 2020.10.16 |
<백준 문제풀이 - 10950번> 파이썬 - A+B-3 (0) | 2020.10.16 |
<백준 문제풀이 - 2739번> 파이썬 - 구구단 (0) | 2020.10.16 |
<백준 문제풀이 - 14681번> 파이썬 - 사분면 고르기 (0) | 2020.10.16 |