728x90
- N개의 원소를 포함하고 있는 수열이 오름차순으로 정렬
- x가 등장하는 횟수 계산
예) [1, 1, 2, 2, 2, 2, 3] 에서 x = 2 이면, 현재 수열에서 값이 2인 원소가 4개
from bisect import bisect_left, bisect_right
def count_by_range(array, left_value, right_value):
right_index = bisect_right(array, right_value)
left_index = bisect_left(array, left_value)
return right_index - left_index
n, x = map(int, input().split()) # n, x 입력
array = list(map(int, input().split())) # 데이터 입력
# 값이 [x, x] 범위에 있는 데이터의 개수 계산
count = count_by_range(array, x, x)
# 값이 x인 원소가 존재하지 않는다면
if count == 0:
print(-1)
# 값이 x인 원소가 존재하면
else:
print(count)
반응형
'전.py' 카테고리의 다른 글
[python] 개미 전사 (다이나믹 프로그래밍) (0) | 2022.02.25 |
---|---|
[python] 다이나믹 프로그래밍 (0) | 2022.02.25 |
[python] 떡볶이 떡 만들기 (이진 탐색) (0) | 2022.02.24 |
[python] 두 배열의 원소 교체 (정렬) (0) | 2022.02.23 |
[python] 정렬 (0) | 2022.02.23 |