-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathtest.py
More file actions
40 lines (36 loc) · 1.16 KB
/
Copy pathtest.py
File metadata and controls
40 lines (36 loc) · 1.16 KB
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
32
33
34
35
36
37
38
39
40
import statistics
from decimal import Decimal
N = int(input())
A = input().split() # 空白区切りでリストに
dict = {} # 数字が出できた回数を記録する辞書
for i, num in enumerate(A):
A[i] = int(num) # intにする
if A[i] in dict: # 辞書に存在したら
dict[A[i]] += 1 # 出てきた回数を1プラスする
else: # 辞書に存在しなかったら
dict[A[i]] = 1 # 辞書に1回で登録する
max_times = max(dict.values()) # 出てきた回数が最も多い数
max_times_num = max(dict, key=dict.get) # 最頻値
median = statistics.median(A) # 中央値
if max_times == dict[median]:
print("a")
maxtimes = dict[median]
maxtimes_num = median
if max_times_num < median:
if max_times < (Decimal(N) / Decimal(2) + Decimal(1)):
print("Yes1")
else:
print("No")
elif max_times_num > median:
if max_times < (Decimal(N) / Decimal(2)):
print("Yes2")
else:
print("No")
else:
if max_times < (Decimal(N) / Decimal(2) + Decimal(1)):
if max_times_num == max(A):
print("No")
else:
print("Yes3")
else:
print("No")