NIRVANA
[level 1] x만큼 간격이 있는 n개의 숫자 본문
문제
함수 solution은 정수 x와 자연수 n을 입력 받아, x부터 시작해 x씩 증가하는 숫자를 n개 지니는 리스트를 리턴해야 합니다. 다음 제한 조건을 보고, 조건을 만족하는 함수, solution을 완성해주세요.
문제 풀이 접근법1
def solution(x, n):
answer = []
if x > 0:
for i in range(x, n*x+1, x):
answer.append(i)
else:
for i in range(x, n*x-1, x):
answer.append(i)
return answer
다음과 같은 방법으로 접근하였는데 런타임 에러가 발생해서 틀렸다.
아마도 x가 0일때는 코드가 예상대로 작동하지 않아서 그런 것 같다.
문제 풀이 접근법2
def solution(x, n):
answer = []
for i in range(1, n+1):
answer.append(i*x)
return answer
다음과 같이 x가 들어가도 괜찮도록 코드를 수정했다!
x, n = map(int, input().split())
answer = []
for i in range(x, x*(n+1), x):
answer.append(i)
print(answer)
다른 분들의 풀이를 보다가 n+1에 ()를 씌우면 if-else문을 사용하지 않아도 된다는 걸 보고
한번 해봤다 ㅎㅎ
'Coding test(Python3) > Programmers' 카테고리의 다른 글
[level 1] 자연수 뒤집어 배열로 만들기 (0) | 2023.07.07 |
---|---|
[level 1] 문자열 내 p와 y의 개수 (0) | 2023.07.06 |
[level 1] 평균 구하기 (0) | 2023.07.06 |
[level 1] 짝수와 홀수 (0) | 2023.07.05 |
[level 1] 자릿수 더하기 (0) | 2023.07.05 |