PAT B1059 C語言競賽 (20 分

2021-09-17 08:09:09 字數 1630 閱讀 7193

1059 c語言競賽 (20 分)

c 語言競賽是浙江大學計算機學院主持的乙個歡樂的競賽。既然競賽主旨是為了好玩,頒獎規則也就制定得很滑稽:

給定比賽的最終排名以及一系列參賽者的 id,你要給出這些參賽者應該獲得的獎品。

輸入第一行給出乙個正整數 n(≤10​4​​),是參賽者人數。隨後 n 行給出最終排名,每行按排名順序給出一位參賽者的 id(4 位數字組成)。接下來給出乙個正整數 k 以及 k 個需要查詢的 id。

對每個要查詢的 id,在一行中輸出id: 獎品,其中獎品或者是mystery award(神秘大獎)、或者是minion(小黃人)、或者是chocolate(巧克力)。如果所查 id 根本不在排名裡,列印are you kidding?(耍我呢?)。如果該 id 已經查過了(即獎品已經領過了),列印id: checked(不能多吃多占)。

6

1111

6666

8888

1234

5555

0001

68888

0001

1111

2222

8888

2222

8888: minion

0001: chocolate

1111: mystery award

2222: are you kidding?

8888: checked

2222: are you kidding?

簡單模擬。

每個人的資訊儲存在node結點中。邊輸入編號,邊判斷這人應該拿什麼獎(獎的資訊儲存在node中)。順便用乙個hash陣列,把每個人在陣列v中的下標(1到n)儲存下來。

給定k個編號,先判斷這人是不是存在。怎麼判斷?去看hash陣列中是否有他的值,下標均為1-n,hash初始化全是0;

若存在,輸出每個人相應的獎,並且把這個人的flag置為1,表示已領過獎。

坑點:把查詢編號是否存在 放在第一條判斷。否則出錯。

順便打乙個小廣告:

以往的刷題過程中,經常摸魚結果乙個月下來a不了多少題,效率很低。為了提高積極性,搞了乙個打卡群,在群友監督下,每天都能刷幾題,讓你不在摸魚!

童鞋,你想變禿(變強)嗎?你想瘋狂水群(a題)嗎?歡迎加入不是養老群pat打卡監督群:q群號:937300205

#include #include #include using namespace std;

struct node;

bool isprime(int n)

int a[10000] = ;

int main()

cin >> k;

for(int i = 1; i <= k; i++)

return 0;

}

PAT B1059 C語言競賽 20分

題目鏈結 題目描述 c 語言競賽是浙江大學計算機學院主持的乙個歡樂的競賽。既然競賽主旨是為了好玩,頒獎規則也就制定得很滑稽 0 冠軍將贏得乙份 神秘大獎 比如很巨大的一本學生研究 集 1 排名為素數的學生將贏得最好的獎品 小黃人玩偶!2 其他人將得到巧克力。給定比賽的最終排名以及一系列參賽者的 id...

PAT B1059 C語言競賽

c語言競賽是浙江大學計算機學院主持的乙個歡樂的競賽。既然競賽主旨是為了好玩,頒獎規則也就制定得很滑稽 0.冠軍將贏得乙份 神秘大獎 比如很巨大的一本學生研究 集 1.排名為素數的學生將贏得最好的獎品 小黃人玩偶!2.其他人將得到巧克力。給定比賽的最終排名以及一系列參賽者的id,你要給出這些參賽者應該...

PATB 1059 C語言競賽 簡單暴力

c 語言競賽是浙江大學計算機學院主持的乙個歡樂的競賽。既然競賽主旨是為了好玩,頒獎規則也就制定得很滑稽 給定比賽的最終排名以及一系列參賽者的 id,你要給出這些參賽者應該獲得的獎品。輸入第一行給出乙個正整數 n 104 是參賽者人數。隨後 n 行給出最終排名,每行按排名順序給出一位參賽者的 id 4...