1038 統計同成績學生 20 分

2021-10-21 01:40:17 字數 644 閱讀 1407

#include

#include

#include

#include

using

namespace std;

intmain()

;for

(int r =

0; r < num; r++

) a[stuscore[r]]++

;int chaxunnum;

cin >> chaxunnum;

vector<

int>

lookscore

(chaxunnum)

;for

(int j =

0; j < chaxunnum; j++

) cin >> lookscore[j]

;for

(int k =

0; k < chaxunnum-

1; k++

) cout << a[lookscore[chaxunnum -1]

];return0;

}

這裡第一次寫的時候 最後乙個測試點執行時間超時,存在問題就是迴圈遍歷導致演算法複雜度增加

解決辦法:以空間換時間 將成績直接作為陣列下標,陣列儲存的元素即為分數出現的次數。

1038 統計同成績學生(20 分)

本題要求讀入 n 名學生的成績,將獲得某一給定分數的學生人數輸出。輸入在第 1 行給出不超過 10 5 的正整數 n,即學生總人數。隨後一行給出 n 名學生的百分制整數成績,中間以空格分隔。最後一行給出要查詢的分數個數 k 不超過 n 的正整數 隨後是 k 個分數,中間以空格分隔。在一行中按查詢順序...

1038 統計同成績學生(20 分)

1038 統計同成績學生 20 分 本題要求讀入 n 名學生的成績,將獲得某一給定分數的學生人數輸出。輸入格式 輸入在第 1 行給出不超過 105 10 5 105 的正整數 n,即學生總人數。隨後一行給出 n 名學生的百分制整數成績,中間以空格分隔。最後一行給出要查詢的分數個數 k 不超過 n 的...

1038 統計同成績學生 (20 分)

1038 統計同成績學生 20 分 本題要求讀入 n 名學生的成績,將獲得某一給定分數的學生人數輸出。輸入在第 1 行給出不超過 10 5 的正整數 n,即學生總人數。隨後一行給出 n 名學生的百分制整數成績,中間以空格分隔。最後一行給出要查詢的分數個數 k 不超過 n 的正整數 隨後是 k 個分數...