프로그래밍 문제 풀이/코드업(파이썬)

코드업[CodeUp] Python 기초 100제 [6093번]

태은코딩 2024. 1. 30. 13:26

6093 : [기초-리스트] 이상한 출석 번호 부르기2(py)

문제설명
정보 선생님은 수업을 시작하기 전에 이상한 출석을 부른다.

학생들의 얼굴과 이름을 빨리 익히기 위해 번호를 무작위(랜덤)으로 부르는데,
영일이는 선생님이 부른 번호들을 기억하고 있다가 거꾸로 불러보는 것을 해보고 싶어졌다.

출석 번호를 n번 무작위로 불렀을 때, 부른 번호를 거꾸로 출력해 보자.

예시
...
for i in range(n-1, -1, -1) :
  print(a[i], end=' ')
...

참고
번호를 부른 순서를 리스트에 순서대로 기록해 두었다가, 기록한 값들을 거꾸로 출력하면 된다.
range(시작, 끝, 증감) #시작 수는 포함, 끝 수는 포함하지 않음. [시작, 끝)
range(n-1, -1, -1) #n-1, n-2, ..., 3, 2, 1, 0

 

입력값
번호를 부른 횟수(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

 

정답 및 가능한 정답

n=int(input())
a=list(map(int,input().split()))
for i in range(n-1,-1,-1):
    print(a[i],end=" ")

 

해설

먼저 출석부른 횟수 n을 int자료형으로 입력받는다.

그 다음 a= input().split()으로 무작위로 부른 n개의 번호를 공백을 두고 입력받고 
for문으로 a[i]=int(a[i])로 int자료형으로 요소들을 바꾸던가
list(map(int, input().split()))으로 입력받으면서 바로 요소들을 int자료형으로 입력할 수도 있다.

a를 반대순서로 출력하려면 for문을 사용해 list요소를 뒤에서부터 하나씩 출력한다.
for문으로 뒤에서부터 요소를 출력하기 위해 범위를
range(n-1, -1, -1)로 설정하고
공백으로 구분하여 한 줄로 출력해야하니 print(d[i], end=" ")