首頁 php教程 php手册 九度OnlineJudge之1014:排名

九度OnlineJudge之1014:排名

Jun 13, 2016 am 10:19 AM
即時 排名 考試

题目描述:                       

    今天的上机考试虽然有实时的Ranklist,但上面的排名只是根据完成的题数排序,没有考虑每题的分值,所以并不是最后的排名。给定录取分数线,请你写程序找出最后通过分数线的考生,并将他们的成绩按降序打印。

输入:                       

    测试输入包含若干场考试的信息。每场考试信息的第1行给出考生人数N ( 0

    当读入的考生人数为0时,输入结束,该场考试不予处理。

输出:                       

    对每场考试,首先在第1行输出不低于分数线的考生人数n,随后n行按分数从高到低输出上线考生的考号与分数,其间用1空格分隔。若有多名考生分数相同,则按他们考号的升序输出。

样例输入:                       

4 5 25

10 10 12 13 15

CS004 3 5 1 3

CS003 5 2 4 1 3 5

CS002 2 1 2

CS001 3 2 3 5

1 2 40

10 30

CS001 1 2

2 3 20

10 10 10

CS000000000000000001 0

CS000000000000000002 2 1 2

0

样例输出:                       

3

CS003 60

CS001 37

CS004 37

0

1

CS000000000000000002 20

 

#include <iostream>  
#include <string>  
#include <vector>  
#include <algorithm>  
#include <cstring>  
  
using namespace std;  
  
  
typedef struct  persons  
{  
    string id;  
    int total;  
    int grade;  
}persons;  
  
bool  compare(persons a,persons b)  
{  
    if (a.grade!=b.grade)  
    return a.grade>b.grade;  
    else  
    return a.id < b.id;  
}  
  
  
int main()  
{  
    int N,M,G;  
  
    vector<persons>   vec;  
      
    int grade[11];  
  
      
  
    while(cin>>N,N!=0)  
    {  
        memset(grade,0,sizeof(grade));  
        vec.clear();  
        int ans=0;  
        cin>>M>>G;  
          
        for (int i=1;i<=M;i++)  
            cin>>grade[i];  
        for (int i=0;i<N;i++)  
        {  
            persons  p;  
            cin>>p.id>>p.total;  
            p.grade = 0;  
            for (int j=1;j<=p.total;j++)  
            {  
                int t;  
                cin>>t;  
                p.grade += grade[t];  
  
            }  
  
            if (p.grade >= G) ++ans;  
  
            vec.push_back(p);  
        }  
     sort(vec.begin(),vec.end(),compare);  
     cout<<ans<<endl;  
     for (int i=0;i<ans;++i)  
     {  
         cout<<vec[i].id<<" "<<vec[i].grade<<endl;  
  
     }  
  
  
  
  
    }  
  
  
  
  
    //system("pause");  
    return 0;  
}  
登入後複製

 

 

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Java教學
1662
14
CakePHP 教程
1418
52
Laravel 教程
1311
25
PHP教程
1261
29
C# 教程
1234
24
2024 CSRankings全美電腦科學排名發布! CMU霸榜,MIT跌出前5 2024 CSRankings全美電腦科學排名發布! CMU霸榜,MIT跌出前5 Mar 25, 2024 pm 06:01 PM

2024CSRankings全美電腦科學專業排名,剛剛發布了!今年,全美全美CS最佳大學排名中,卡內基美隆大學(CMU)在全美和CS領域均名列前茅,而伊利諾大學香檳分校(UIUC)則連續六年穩定地位於第二。佐治亞理工學院則排名第三。然後,史丹佛大學、聖迭戈加州大學、密西根大學、華盛頓大學並列世界第四。值得注意的是,MIT排名下跌,跌出前五名。 CSRankings是由麻省州立大學阿姆赫斯特分校電腦與資訊科學學院教授EmeryBerger發起的全球院校電腦科學領域排名計畫。該排名是基於客觀的

如何在技嘉主機板上設定鍵盤啟動功能 (技嘉主機板啟用鍵盤開機方式) 如何在技嘉主機板上設定鍵盤啟動功能 (技嘉主機板啟用鍵盤開機方式) Dec 31, 2023 pm 05:15 PM

技嘉的主機板怎麼設定鍵盤開機首先,要支援鍵盤開機,一定是PS2鍵盤! !設定步驟如下:第一步:開機按Del或F2進入bios,到bios的Advanced(進階)模式普通主機板預設進入主機板的EZ(簡易)模式,需要按F7切換到進階模式,ROG系列主機板預設進入bios的進階模式(我們用簡體中文來示範)第二步:選擇到-【進階】-【進階電源管理(APM)】第三步:找到選項【由PS2鍵盤喚醒】第四步:這個選項預設是Disabled(關閉)的,下拉之後可以看到三種不同的設定選擇,分別是按【空白鍵】開機、按組

CS玩家的首選:建議的電腦配置 CS玩家的首選:建議的電腦配置 Jan 02, 2024 pm 04:26 PM

1.處理器在選擇電腦配置時,處理器是至關重要的組件之一。對於玩CS這樣的遊戲來說,處理器的效能直接影響遊戲的流暢度和反應速度。建議選擇IntelCorei5或i7系列的處理器,因為它們具有強大的多核心處理能力和高頻率,可以輕鬆應對CS的高要求。 2.顯示卡顯示卡是遊戲表現的重要因素之一。對於射擊遊戲如CS而言,顯示卡的表現直接影響遊戲畫面的清晰度和流暢度。建議選擇NVIDIAGeForceGTX系列或AMDRadeonRX系列的顯示卡,它們具備出色的圖形處理能力和高幀率輸出,能夠提供更好的遊戲體驗3.內存電

Java和WebSocket的結合:如何實現即時視訊串流播放 Java和WebSocket的結合:如何實現即時視訊串流播放 Dec 17, 2023 pm 05:50 PM

隨著網路技術的不斷發展,即時視訊串流已成為了網路領域的重要應用。要實現即時視訊串流播放,其中的關鍵技術包括WebSocket和Java。本文將介紹如何結合使用WebSocket和Java實現即時視訊串流播放,並提供相關的程式碼範例。一、什麼是WebSocketWebSocket是一種在單一TCP連線上進行全雙工通訊的協議,它在Web

主機板上的數位音訊輸出介面-SPDIF OUT 主機板上的數位音訊輸出介面-SPDIF OUT Jan 14, 2024 pm 04:42 PM

主機板上SPDIFOUT連接線序最近我遇到了一個問題,就是關於電線的接線順序。我上網查了一下,有些資料說1、2、4對應的是out、+5V、接地;而有些資料則說1、2、4對應的是out、接地、+5V。最好的方法是查看你的主機板說明書,如果找不到說明書,你可以使用萬用電表進行測量。首先找到接地,然後就可以確定其他的接線順序了。主機板vdg怎麼接線連接主機板的VDG接線時,您需要將VGA連接線的一端插入顯示器的VGA接口,另一端插入電腦的顯示卡VGA接口。請注意,不要將其插入主機板的VGA介面。完成連接後,您可以

PHP表單處理:表單資料排序與排名 PHP表單處理:表單資料排序與排名 Aug 09, 2023 pm 06:01 PM

PHP表單處理:表單資料排序與排名在Web開發中,表單是常見的使用者輸入方式。當我們收集到來自使用者的表單資料後,通常需要對這些資料進行處理和分析。本文將介紹如何使用PHP對表單資料進行排序與排名,以便更好地顯示和分析使用者提交的資料。一、表單資料排序當我們收集到使用者提交的表單資料後,可能會發現這些資料的順序不一定符合我們的要求。而對於需要依照特定規則展示或分

Vue統計圖表的排名和比較功能實現 Vue統計圖表的排名和比較功能實現 Aug 26, 2023 am 09:45 AM

Vue統計圖表的排名和比較功能實現在資料視覺化領域中,統計圖表是一種直觀且清晰地展示資料的方式。 Vue作為一種流行的前端框架,提供了豐富的工具和組件來實現各種圖表。本文將介紹如何使用Vue實現統計圖表的排名和比較功能。在開始之前,我們需要先安裝Vue和相關的圖表庫。我們將使用Chart.js作為圖表庫,該庫提供了豐富的圖表類型和互動功能。可以透過以下命令安裝C

利用C++實現嵌入式系統的即時音視頻處理功能 利用C++實現嵌入式系統的即時音視頻處理功能 Aug 27, 2023 pm 03:22 PM

利用C++實現嵌入式系統的即時音視頻處理功能嵌入式系統的應用範圍越來越廣泛,尤其在音視頻處理領域的需求日益增長。面對這樣的需求,利用C++語言實現嵌入式系統的即時音視訊處理功能成為常見的選擇。本文將介紹如何使用C++語言開發嵌入式系統的即時音視訊處理功能,並給出對應的程式碼範例。為了實現即時音視訊處理功能,首先需要理解音視訊處理的基本流程。一般來說,影音

See all articles