這一題,比較麻煩,可以說是簡單的結構體的應用。
輸入的資料量比較大,用scanf比較好一點,還有一點比較難的是如果分數一樣,要按考生號的公升序來輸出。
我用乙個結構體來存每乙個考生的考號和總成績,然後排序,算出有幾個合格,再輸出。
下面的是一次ac的**:
#include #include #include #include using namespace std;
class data
;data student[1005];
int cmp(const data& a, const data& b) //排序從大到小
while((b.str[j] >= 'a' && b.str[j] <= 'z') || (b.str[j] >= 'a' && b.str[j] <= 'z')) //忽略前面的字母
j++;
while(b.str[j] != '\0') //算b的考號後面的數字
return x < y; //從小到大排 }}
int main()
} sort(student, student + n, cmp); //排序
int count = 0;
for(i = 0; i < n; i++) //算合格的幾個
printf("%d\n", count); //輸出
for(i = 0; i < count; i++)
printf("%s %d\n", student[i].str, student[i].sum);
} return 0;
}
杭電1236 排名
今天的上機考試雖然有實時的ranklist,但上面的排名只是根據完成的題數排序,沒有考慮 每題的分值,所以並不是最後的排名。給定錄取分數線,請你寫程式找出最後通過分數線的 考生,並將他們的成績按降序列印。測試輸入包含若干場考試的資訊。每場考試資訊的第1行給出考生人數n 0 n 1000 考題數m 0...
ACM訓練合集 HDU1236 排名
problem description 今天的上機考試雖然有實時的ranklist,但上面的排名只是根據完成的題數排序,沒有考慮 每題的分值,所以並不是最後的排名。給定錄取分數線,請你寫程式找出最後通過分數線的 考生,並將他們的成績按降序列印。input 測試輸入包含若干場考試的資訊。每場考試資訊的...
HDU1236排名(排序)
剛學會c stl標準模板庫,就試著寫了一道排序的題 發現c stl好強很大,雖然有許多函式調錯了,但是經過除錯過後,居然一次ac了,興奮呀!所以以此紀念一下這個小小的突破 嘿嘿 好了,先看看題目吧!題意 今天的上機考試雖然有實時的ranklist,但上面的排名只是根據完成的題數排序,沒有考慮 每題的...