본문 바로가기

Programming Language/Python3.6

[python 파이썬] 백준 10807번 코드 풀이

문제

총 N개의 정수가 주어졌을 때, 정수 v가 몇 개인지 구하는 프로그램을 작성하시오.

입력

첫째 줄에 정수의 개수 N(1 ≤ N ≤ 100)이 주어진다. 둘째 줄에는 정수가 공백으로 구분되어져있다. 셋째 줄에는 찾으려고 하는 정수 v가 주어진다. 입력으로 주어지는 정수와 v는 -100보다 크거나 같으며, 100보다 작거나 같다.

출력

첫째 줄에 입력으로 주어진 N개의 정수 중에 v가 몇 개인지 출력한다.

 

답안 코드

문제만 보고 리스트를 입력받는 방식인지, 리스트 안에 원소를 랜덤으로 입력받는 건지 헷갈렸는데

예제 입력에 3번 입력 받는 것을 보고 -> 리스트도 입력받는 방식으로 구현했다.

 

1. N, 리스트(N_list), V 입력받기

2. 리스트 요소 입력 받을 때, map() 으로 변환 후, list로 변환.

3. 파이썬 리스트 내장 함수 count() 이용해 출력

 

# 정수의 개수
N = int(input())
# 공백으로 구분된 정수 리스트
N_list = list(map(int, input().split()))
# 찾으려고 하는 정수
v = int(input())

# 출력
print(N_list.count(v))

 

리스트 입력 받을 때, 한 번에 요소를 다 입력받고 싶다면 (공백으로 구분한 입력) 아래와 같은 형식으로 작성하면 된다! 

n_list = list(map(int, input().split()))

반응형