洛谷——P1068 分数线划定
題目描述
世博會(huì)志愿者的選拔工作正在 A 市如火如荼的進(jìn)行。為了選拔最合適的人才,AA市對(duì)所有報(bào)名的選手進(jìn)行了筆試,筆試分?jǐn)?shù)達(dá)到面試分?jǐn)?shù)線的選手方可進(jìn)入面試。面試分?jǐn)?shù)線根據(jù)計(jì)劃錄取人數(shù)的150\%150%劃定,即如果計(jì)劃錄取mm名志愿者,則面試分?jǐn)?shù)線為排名第m \times 150\%m×150%(向下取整)名的選手的分?jǐn)?shù),而最終進(jìn)入面試的選手為筆試成績(jī)不低于面試分?jǐn)?shù)線的所有選手。
現(xiàn)在就請(qǐng)你編寫程序劃定面試分?jǐn)?shù)線,并輸出所有進(jìn)入面試的選手的報(bào)名號(hào)和筆試成績(jī)。
輸入輸出格式
輸入格式:
?
第一行,兩個(gè)整數(shù)?n,m(5 ≤ n ≤ 5000,3 ≤ m ≤ n)n,m(5≤n≤5000,3≤m≤n),中間用一個(gè)空格隔開,其中nn表示報(bào)名參加筆試的選手總數(shù),mm表示計(jì)劃錄取的志愿者人數(shù)。輸入數(shù)據(jù)保證?m \times 150\%m×150%向下取整后小于等于?nn。
第二行到第?n+1n+1?行,每行包括兩個(gè)整數(shù),中間用一個(gè)空格隔開,分別是選手的報(bào)名號(hào)?k(1000 ≤ k ≤ 9999)k(1000≤k≤9999)和該選手的筆試成績(jī)s(1 ≤ s ≤ 100)s(1≤s≤100)。數(shù)據(jù)保證選手的報(bào)名號(hào)各不相同。
?
輸出格式:
?
第一行,有22個(gè)整數(shù),用一個(gè)空格隔開,第一個(gè)整數(shù)表示面試分?jǐn)?shù)線;第二個(gè)整數(shù)為進(jìn)入面試的選手的實(shí)際人數(shù)。
從第二行開始,每行包含22個(gè)整數(shù),中間用一個(gè)空格隔開,分別表示進(jìn)入面試的選手的報(bào)名號(hào)和筆試成績(jī),按照筆試成績(jī)從高到低輸出,如果成績(jī)相同,則按報(bào)名號(hào)由小到大的順序輸出。
?
輸入輸出樣例
輸入樣例#1:?復(fù)制
6 3 1000 90 3239 88 2390 95 7231 84 1005 95 1001 88輸出樣例#1:?復(fù)制
88 5 1005 95 2390 95 1000 90 1001 88 3239 88說明
【樣例說明】
m \times 150\% = 3 \times150\% = 4.5m×150%=3×150%=4.5,向下取整后為44。保證44個(gè)人進(jìn)入面試的分?jǐn)?shù)線為8888,但因?yàn)?888有重分,所以所有成績(jī)大于等于8888?的選手都可以進(jìn)入面試,故最終有55個(gè)人進(jìn)入面試。
NOIP 2009 普及組 第二題
?
AC:
#include <iostream> #include <algorithm> #include <cmath>using namespace std;int n, m;struct person {int num;int grade; };bool cmp(person a, person b) {if(a.grade == b.grade) return a.num < b.num;else return a.grade > b.grade; }int main() {scanf("%d%d", &n, &m);person per[n];m = floor(m * 1.5);for(int i = 0; i < n; i++){scanf("%d%d", &per[i].num, &per[i].grade);}sort(per,per+n,cmp);int renshu = m;for(int i = m; i < n; i++){if(per[i].grade == per[m-1].grade) renshu++;else if(per[i].grade < per[m-1].grade) break;}printf("%d %d\n", per[m-1].grade, renshu);for(int i = 0; i < renshu; i++){printf("%d %d\n", per[i].num, per[i].grade);} // cout << renshu;return 0; }定義結(jié)構(gòu)體用sort做的,對(duì)重分需要做些判斷
總結(jié)
以上是生活随笔為你收集整理的洛谷——P1068 分数线划定的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Android--多个Activity共
- 下一篇: 洛谷——P1781 宇宙总统