資源限制
時間限制:1.0s 記憶體限制:256.0MB
問題描述
小藍給學生們組織了一場考試,卷面總分為 100 分,每個學生的得分都是一個 0 到 100 的整數。
如果得分至少是 60 分,則稱為及格。如果得分至少為 85 分,則稱為優秀。
請計算及格率和優秀率,用百分數表示,百分号前的部分四舍五入保留整數。
輸入格式
輸入的第一行包含一個整數 n,表示考試人數。
接下來 n 行,每行包含一個 0 至 100 的整數,表示一個學生的得分。
輸出格式
輸出兩行,每行一個百分數,分别表示及格率和優秀率。百分号前的部分四舍五入保留整數。
樣例輸入
7
80
92
56
74
88
100
0
樣例輸出
71%
43%
評測用例規模與約定
對于50%的評測用例,1≤n≤100。
對于所有評測用例,1≤n≤10000。
代碼實作
n = int(input())
passed, excellent = 0, 0
for i in range(n):
score = int(input())
if score >= 60:
passed += 1
if score >= 85:
excellent += 1
pass_rate = str(int(passed / n * 100 + 0.5)) + "%"
excellent_rate = str(int(excellent / n * 100 + 0.5)) + "%"
print(pass_rate)
print(excellent_rate)
需要注意的是,在Python3中,round()函數的四舍五入實際上是“四舍六入五平分”,是以推薦采用int(a + 0.5)的方式來對百分号前的數字進行四舍五入的取整操作,避免出現問題。