📁 코딩테스트 준비/Python
[SWEA / python] 1545. 거꾸로 출력해 보아요 (D1)
박개봄
2022. 11. 8. 21:36
728x90
✔️ 문제풀이
test_case = int(input())
for i in reversed(range(0,test_case+1)):
print(i, end=" ")
1. step인자를 음수로 지정하는 방법
>>> print(list(range(10, 0, -1)))
[10, 9, 8, 7, 6, 5, 4, 3, 2, 1]
위와 같이 step인자를 음수로 지정하면 숫자가 줄어드는 range객체로 만들 수 있다.
* 이 때, start 인자의 값이 stop인자의 값보다 작거나 같으면 빈 범위가 되므로 주의해야됨!
2. reversed()함수 사용
첫 번째 방법은 헷갈릴 수 있으므로 reversed()함수를 사용하여 range객체를 역순 정렬할 수 있다.
📌 오답노트
test_case = int(input())
arr=[]
for i in range(0,test_case+1):
arr.append(i)
arr.reverse()
print(arr,end=" ")
처음엔 arr라는 변수를 만들어, list로 입력받아서 역순으로 출력하는 방법을 생각했다.
배열이 역순으로 출력되긴 했지만, [8, 7, 6, 5, 4, 3, 2, 1, 0] 이렇게 list의 형태로 '[]'와 ','이 포함된 채로 출력이 되었다.
그래서 list로 입력받지 않고 위 문제풀이의 코드처럼 range()함수와 reversed()함수를 이용하여 풀었더니 8 7 6 5 4 3 2 1 0 의 결과가 나왔다.
-> 앞으로 문제에서 원하는 출력 값이 list형태인지 아닌지 잘 보고 풀어야겠다 !!!!!!!
728x90