2013 : 당첨자 선정 (P.105)
•시간제한: 1.000 S
•메모리제한: 128 MB
•제출: 301
•통과: 104
•만든사람: suakii
문제 설명
5명의 후보자 이름을 차례대로 입력받아 리스트에 저장한 뒤, 당첨자 수를 입력받아 리스트의 앞에서부터 해당 수만큼 당첨자를 선정하여 출력하는 프로그램을 작성하시오.
[제약 조건]
• 후보자 수: 정확히 5명
• 이름은 공백 없는 문자열입니다.
• 당첨자 수 $N$: $1 \le N \le 5$ (정수)
[💡 단계별 해결 힌트]
1. 후보자 5명 입력받기: 빈 리스트를 만들고
• 예:
2. 당첨자 수 $N$ 입력받기: 마지막 줄의 숫자는 반드시 정수형으로 변환해야 슬라이싱에 쓸 수 있습니다.
• 예:
3. 리스트 슬라이싱으로 앞에서부터 $N$명 뽑아서 출력하기:
• 리스트에서 앞부분 $N$개를 자르는 문법은
•
[제약 조건]
• 후보자 수: 정확히 5명
• 이름은 공백 없는 문자열입니다.
• 당첨자 수 $N$: $1 \le N \le 5$ (정수)
[💡 단계별 해결 힌트]
1. 후보자 5명 입력받기: 빈 리스트를 만들고
for 반복문과 .append()를 사용하여 5번 input()을 받거나, 5개의 이름을 입력받아 리스트로 만듭니다.• 예:
names = [] 생성 후 5번 names.append(input())2. 당첨자 수 $N$ 입력받기: 마지막 줄의 숫자는 반드시 정수형으로 변환해야 슬라이싱에 쓸 수 있습니다.
• 예:
n = int(input())3. 리스트 슬라이싱으로 앞에서부터 $N$명 뽑아서 출력하기:
• 리스트에서 앞부분 $N$개를 자르는 문법은
names[:n] 입니다.•
print(names[:n])을 실행하면 문제에서 요구하는 ['후보0', '후보1'] 형태의 리스트가 그대로 출력됩니다!입력 설명
5줄에 걸쳐 각 후보자의 이름이 주어지고, 마지막 줄에 당첨자 수 N이 주어집니다.
출력 설명
선정된 당첨자 명단을 리스트 형식으로만 출력합니다.
입력 예시
COPY
복사되었습니다!
복사되었습니다!
후보0
후보1
후보2
후보3
후보4
1
출력 예시
COPY
복사되었습니다!
복사되었습니다!
['후보0']
도움
[💡 핵심 코드 힌트]
• 5명 이름 리스트 만들기:
• 당첨자 수 정수 입력:
• 앞에서부터 $N$명 슬라이싱하여 리스트째로 출력:
• 5명 이름 리스트 만들기:
names = [input() for _ in range(5)] 또는 names.append(input()) 5회 반복• 당첨자 수 정수 입력:
n = int(input())• 앞에서부터 $N$명 슬라이싱하여 리스트째로 출력:
print(names[:n])