포시코딩

[백준] 여러 줄의 입력값 받는 방법 본문

자료구조알고리즘/문제풀이

[백준] 여러 줄의 입력값 받는 방법

포시 2023. 4. 17. 21:15
728x90

추가사항

input() -> sys.stdin.readline()
print() -> sys.stdout.write()

백준 문제의 입력값을 받거나 출력할 때 input(), print() 대신 sys를 import해서 쓰는게 훨씬 효율이 좋다.

 

개요

첫째 줄에 수의 개수 N이 주어지고
둘째 줄부터 N개의 줄에는 수가 주어질 때 

위의 문장으로 시작하는 문제를 본 적이 있을 것이다.

백준을 접한지 얼마 안된 나는 이 입력값 받는거부터가 멘붕이었는데

그 방법에 대해 알아보자

 

첫 입력을 N으로 지정하는 것까진 똑같다. 

그 후의 입력값들을 어떻게 다룰거냐에 따라 코드가 달라지긴 하는데 

나는 리스트에 넣어볼거임

 

먼저 빈 리스트를 준비한다.

arr = []

 

이후 for문을 N번 돌며 input()을 받아 arr에 넣어주면 된다. 

알고보면 간단하다.

 

코드로 구현해보자

 

코드

N = int(input())  # N을 입력받음
arr = []  # arr 리스트를 초기화

# N번 반복하면서 arr 리스트에 숫자를 입력받음
for i in range(N):
    num = int(input())
    arr.append(num)

print(N, arr)
# 5 [5, 2, 3, 4, 1]
728x90