b374. [福州19中]众数 - 高中生程式解題系統 (zerojudge.tw)
我的第四次解答。參考資料來源2. b374: 求眾數。發現dict()排序速度小於list()排序速度,因此,改用list()排序。
from collections import Counter
import sys
for line in sys.stdin:
if line != "\n":
n = int(line)
nlist = [int(i) for i in input().split()]
ndict = Counter(nlist)
nlist01 = []
nlist02 = []
for i in ndict:
nlist01.append(ndict[i])
m = max(nlist01)
for i in ndict:
if ndict[i] == m:
nlist02.append(i)
nlist02.sort()
for i in nlist02:
print(f'{i} {m}')
else:
break
送出解答:
我的第三次解答。由於第二次解答出現時間過長,所以調整作法。但是最後還是出現TLS。
from collections import Counter
import sys
for line in sys.stdin:
if line != "\n":
n = int(line)
nlist = [int(i) for i in input().split()]
ndict = Counter(nlist)
for i in sorted(ndict.keys()):
if ndict[i] == max(ndict.values()):
print(i,ndict[i])
else:
break
送出解答:
其細節還是出現在最後的項目:我的第二次解答。由於第一次解答出現時間過長,所以參考資料來源3.Counter。
from collections import Counter
import sys
for line in sys.stdin:
if line != "\n":
n = int(line)
nlist = [int(i) for i in input().split()]
nCounter = Counter(nlist)
maxnC = max(nCounter.values())
for i in nCounter.keys():
if nCounter[i] == maxnC:
print(i," ",maxnC)
else:
break
送出測試的程式碼:
from collections import Counter
import sys
for line in sys.stdin:
if line != "\n":
n = int(line)
nlist = [int(i) for i in input().split()]
nCounter = Counter(nlist)
maxnC = max(nCounter.values())
for i in nCounter.keys():
if nCounter[i] == maxnC:
print(i," ",maxnC)
else:
break
所得的結果:
送出解答:不足的部分
我的第一次解答。在最後送出答案,卻出現錯誤,其詳情如下。又,送出測試的格式與送出答案的格式不同,必須作細項調整。
import sys
for line in sys.stdin:
if line != "\n":
n = int(line)
nlist = [int(i) for i in input().split()]
nset = set(nlist)
ndict = dict()
for i in nset:
ndict[i] = 0
for j in nlist:
if i == j :
ndict[i] = ndict[i] + 1
for i in ndict:
if ndict[i] == max(ndict.values()):
print(str(i)+" "+str(ndict[i]))
else:
break
送出測試:
送出解答:
資料來源:
1.高中生解題系統
2. b374: 求眾數
3.Counter
ZeroJudge解題
ZeroJudge python解答:a004. 文文的求婚 ZeroJudge python解答:a005. Eva 的回家作業
ZeroJudge python解答:a006. 一元二次方程式
ZeroJudge python解答:a009. 解碼器
ZeroJudge python解答:a010. 因數分解
ZeroJudge python解答:a015. 矩陣的翻轉
ZeroJudge python解答:a017. 五則運算
ZeroJudge python解答:a020. 身分證檢驗
ZeroJudge python解答:a021. 大數運算
ZeroJudge python解答:a022. 迴文
ZeroJudge python解答:a024. 最大公因數(GCD)
ZeroJudge python解答:a034. 二進位制轉換
ZeroJudge python解答:a038. 數字翻轉
ZeroJudge python解答:a040. 阿姆斯壯數
ZeroJudge python解答:a042. 平面圓形切割
ZeroJudge python解答:a044. 空間切割
ZeroJudge python解答:a053. Sagit's 計分程式
ZeroJudge python解答:a054. 電話客服中心
ZeroJudge python解答:a058. MOD3
ZeroJudge python解答:a059. 完全平方
ZeroJudge python解答:a065. 提款卡密碼
ZeroJudge python解答:a104. 排序
ZeroJudge python解答:a121. 質數又來囉
ZeroJudge python解答:a148. You Cannot Pass?!
ZeroJudge python解答:a149. 乘乘樂
ZeroJudge python解答:a215. 明明愛數數
ZeroJudge python解答:a216. 數數愛明明
ZeroJudge python解答:a224. 明明愛明明
ZeroJudge python解答:a225. 明明愛排列
ZeroJudge python解答:a244. 新手訓練 ~ for + if
ZeroJudge python解答:a248. 新手訓練 ~ 陣列應用
ZeroJudge python解答:a263. 日期差幾天
ZeroJudge python解答:a291. nAnB problem
ZeroJudge python解答:a410. 解方程
ZeroJudge python解答:a528. 大數排序
ZeroJudge python解答:a647. 投資專家
ZeroJudge python解答:a693. 吞食天地
ZeroJudge python解答:a694. 吞食天地二ZeroJudge python解答:a410. 解方程
ZeroJudge python解答:a528. 大數排序
ZeroJudge python解答:a647. 投資專家
ZeroJudge python解答:a693. 吞食天地
ZeroJudge python解答:a738. 最大公约数
沒有留言:
張貼留言