Notice
Recent Posts
Recent Comments
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- ChatGPT
- 편스토랑 우승상품
- hackerrank
- dacon
- github
- 맥북
- 더현대서울 맛집
- leetcode
- 파이썬
- SW Expert Academy
- 편스토랑
- 프로그래머스
- ubuntu
- AI 경진대회
- Baekjoon
- 백준
- 프로그래머스 파이썬
- 자연어처리
- 우분투
- PYTHON
- Real or Not? NLP with Disaster Tweets
- 캐치카페
- 데이콘
- Git
- 코로나19
- programmers
- gs25
- Docker
- Kaggle
- 금융문자분석경진대회
Archives
- Today
- Total
솜씨좋은장씨
[leetCode] 1287. Element Appearing More Than 25% In Sorted Array (Python) 본문
Programming/코딩 1일 1문제
[leetCode] 1287. Element Appearing More Than 25% In Sorted Array (Python)
솜씨좋은장씨 2020. 11. 5. 23:28728x90
반응형
Given an integer array sorted in non-decreasing order, there is exactly one integer in the array that occurs more than 25% of the time.
Return that integer.
Example 1:
Input: arr = [1,2,2,6,6,6,6,7,10]
Output: 6
Constraints:
- 1 <= arr.length <= 10^4
- 0 <= arr[i] <= 10^5
Solution
from collections import Counter
class Solution:
def findSpecialInteger(self, arr: List[int]) -> int:
answer = 0
percent_25_num = int(len(arr) // 4)
cnt = Counter(arr)
keys = list(cnt.keys())
for key in keys:
if cnt[key] > percent_25_num:
answer = key
break
return answer
Solution 해설
먼저 25%의 기준이 몇 개인지 arr 의 길이를 4로 나누어 줍니다.
그 다음 collections의 Counter를 활용하여 arr 속의 각각의 값들이 몇 번씩 등장하는지 카운팅 해줍니다.
그럼 각 값들이 몇 번씩 등장하는지 정보가 담겨있는 Dictionary가 생성되고
해당 Dictionary의 키를 활용하여 반복문을 돌면서 각 값의 카운팅 값이 25%의 개수보다 더 많다면!
정답으로 return 합니다.
아직 여기서 정렬된 리스트를 넘겨준다는 조건을 활용하지 않아 효율이 많이 떨어집니다.
추후에 변경할 예정입니다.
'Programming > 코딩 1일 1문제' 카테고리의 다른 글
[leetCode] 1299. Replace Elements with Greatest Element on Right Side (Python) (0) | 2020.11.07 |
---|---|
[leetCode] 1122. Relative Sort Array (Python) (0) | 2020.11.06 |
[leetCode] 1380. Lucky Numbers in a Matrix (Python) (0) | 2020.11.04 |
[leetCode] 1351. Count Negative Numbers in a Sorted Matrix (Python) (0) | 2020.11.03 |
[leetCode] 1137. N-th Tribonacci Number (Python) (0) | 2020.11.02 |
Comments