문제 설명
정보 선생님은 수업을 시작하기 전에 이상한 출석을 부른다.
학생들의 얼굴과 이름을 빨리 익히기 위해 번호를 무작위(랜덤)으로 부르는데,
영일이는 선생님이 부른 번호들을 기억하고 있다가 거꾸로 불러보는 것을 해보고 싶어졌다.
출석 번호를 n번 무작위로 불렀을 때, 부른 번호를 거꾸로 출력해 보자.
입력
번호를 부른 횟수(n, 1 ~ 10000)가 첫 줄에 입력된다.
n개의 랜덤 번호(k, 1 ~ 23)가 두 번째 줄에 공백을 사이에 두고 순서대로 입력된다.
출력
출석을 부른 번호 순서를 바꾸어 공백을 두고 출력한다.
입력 예시
10
10 4 2 3 6 6 7 9 8 5
출력 예시
5 8 9 7 6 6 3 2 4 10
My code
n = int(input())
a = list(map(int,input().split()))
i = n
while i>0:
i -= 1
print(a[i], end=' ')
Answer
n = int(input())
a = input().split()
for i in range(n) :
a[i] = int(a[i])
for i in range(n-1, -1, -1):
print(a[i], end=' ')
Code Review
출석을 부른 번호 순서를 바꾸어 출력하기 위해서는 리스트의 제일 마지막부터 출력해야한다. 따라서 i 를 입력한 숫자와 동일하게 설정해준 뒤 하나씩 줄여나가며 a[i] 를 출력해주었다. 만약 i 가 0 혹은 음수가 되면 반복문이 종료되도록 해주었다.
모범 답안처럼 for 문을 이용하여 반복문을 작성할 수 있다. range(시작, 끝, 증감) 을 이용하여 n-1 부터 0까지 a[i] 가 출력되도록 해주었다.
댓글