PAT-B1041題解


  1. 考試座位號(15)
    時間限制
    400 ms
    內存限制
    65536 kB
    代碼長度限制
    8000 B
    判題程序
    Standard
    作者
    CHEN, Yue
    每個PAT考生在參加考試時都會被分配兩個座位號,一個是試機座位,一個是考試座位。正常情況下,考生在入場時先得到試機座位號碼,入座進入試機狀態後,系統會顯示該考生的考試座位號碼,考試時考生需要換到考試座位就座。但有些考生遲到了,試機已經結束,他們只能拿着領到的試機座位號碼求助於你,從後臺查出他們的考試座位號碼。

輸入格式:

輸入第一行給出一個正整數N(<=1000),隨後N行,每行給出一個考生的信息:“准考證號 試機座位號 考試座位號”。其中准考證號由14位數字組成,座位從1到N編號。輸入保證每個人的准考證號都不同,並且任何時候都不會把兩個人分配到同一個座位上。

考生信息之後,給出一個正整數M(<=N),隨後一行中給出M個待查詢的試機座位號碼,以空格分隔。

輸出格式:

對應每個需要查詢的試機座位號碼,在一行中輸出對應考生的准考證號和考試座位號碼,中間用1個空格分隔。

輸入樣例:
4
10120150912233 2 4
10120150912119 4 1
10120150912126 1 3
10120150912002 3 2
2
3 4
輸出樣例:
10120150912002 2
10120150912119 1


AC代碼:

#include<iostream>
using namespace std;
struct{
    long long id;           //准考證號 
    int examseat;           //考試座位號 
}testseat[1010];            //試機座位號 
int main(){
    int n;
    int m;
    int seat,examseat;
    long long id; 
    cin>>n;
    while(n--){
        cin>>id>>seat>>examseat;
        testseat[seat].id=id;
        testseat[seat].examseat=examseat;
    }
    cin>>m;
    while(m--){
        cin>>seat;
        cout<<testseat[seat].id<<" "<<testseat[seat].examseat<<endl;
    }
    return 0;
} 

採用這種存儲方式,時間複雜度較低


更多查看個人博客:https://beatjerome.github.io

發佈了140 篇原創文章 · 獲贊 47 · 訪問量 6萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章