適合初步練習PAT乙級 (1041) 考試座位號

2021-10-02 11:52:22 字數 1369 閱讀 8760

每個 pat 考生在參加考試時都會被分配兩個座位號,乙個是試機座位,乙個是考試座位。正常情況下,考生在入場時先得到試機座位號碼,入座進入試機狀態後,系統會顯示該考生的考試座位號碼,考試時考生需要換到考試座位就座。但有些考生遲到了,試機已經結束,他們只能拿著領到的試機座位號碼求助於你,從後台查出他們的考試座位號碼。

輸入格式:

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

考生資訊之後,給出乙個正整數 m(≤n),隨後一行中給出 m 個待查詢的試機座位號碼,以空格分隔。

輸出格式:

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

輸入樣例:

43310120150912233 2 4

3310120150912119 4 1

3310120150912126 1 3

3310120150912002 3 2

23 4

輸出樣例:

3310120150912002 2

3310120150912119 1

#include

#include

using

namespace std;

intmain()

cin >> m;

for(

int i=

0; i < m; i++

)return0;

}

思路:

可用二維陣列來儲存准考證號,試機座位號,考試座位號。因為准考證號為14位數字組成,所以用字串陣列比較方便。stu[1001][2]其中1001表示不超過1000個考生,准考證號儲存在stu[t][0]中,考試座位號儲存在stu[t][1]。

方法2:

由於需要用機試座位號來查詢考生,因此不妨令結構體student記錄單個考生的准考證號和考試座位號,然後直接把試機座位號作為陣列的下標,這樣就能通過試機座位號直接獲取到相應考生的准考證號和考試座位號。

#include

const

int maxn =

1010

;struct student student[maxn]

;//以試機座位號作為下標來記錄考生

intmain()

scanf

("%d"

,&m)

;for

(int i =

0; i < m; i++

)return0;

}

適合初步練習PAT乙級 (1019) 數字黑洞

給定任乙個各位數字不完全相同的 4 位正整數,如果我們先把 4 個數字按非遞增排序,再按非遞減排序,然後用第 1 個數字減第 2 個數字,將得到乙個新的數字。一直重複這樣做,我們很快會停在有 數字黑洞 之稱的 6174,這個神奇的數字也叫 kaprekar 常數。例如,我們從6767開始,將得到 7...

適合初步練習PAT乙級 (1064) 朋友數

如果兩個整數各位數字的和是一樣的,則被稱為是 朋友數 而那個公共的和就是它們的 朋友證號 例如 123 和 51 就是朋友數,因為 1 2 3 5 1 6,而 6 就是它們的朋友證號。給定一些整數,要求你統計一下它們中有多少個不同的朋友證號。輸入格式 輸入第一行給出正整數 n。隨後一行給出 n 個正...

適合初步練習PAT乙級 (1067) 試密碼

當你試圖登入某個系統卻忘了密碼時,系統一般只會允許你嘗試有限多次,當超出允許次數時,賬號就會被鎖死。本題就請你實現這個小功能。輸入格式 輸入在第一行給出乙個密碼 長度不超過 20 的 不包含空格 tab 回車的非空字串 和乙個正整數 n 10 分別是正確的密碼和系統允許嘗試的次數。隨後每行給出乙個以...