題目鏈結
病人登記看病,編寫乙個程式,將登記的病人按照以下原則排出看病的先後順序:
1.老年人(年齡 ≥60 歲)比非老年人優先看病。
2.老年人按年齡從大到小的順序看病,年齡相同的按登記的先後順序排序。
3.非老年人按登記的先後順序看病。
輸入格式
第 1 行,輸入乙個小於 100 的正整數,表示病人的個數;
後面按照病人登記的先後順序,每行輸入乙個病人的資訊,包括:乙個長度小於 10 的字串表示病人的 id(每個病人的 id 各不相同且只含數字和字母),乙個整數表示病人的年齡(不超過 100 歲),中間用單個空格隔開。
輸出格式
按排好的看病順序輸出病人的 id,每行乙個。
5
021075
40004003
15010158
67021033
75102012
30
021033
010158
021075
004003
102012
結構體排序,老年人一組,非老年人一組。
c++**:
#include
using
namespace std;
struct t
num1[
110]
, num2[
110]
;int
cmp(t a, t b)
bool
cmp1
(t a, t b)
bool
cmp2
(t a, t b)
intmain()
else
}sort
(num1, num1 + cnt, cmp1)
;sort
(num2, num2 + cnt2, cmp2)
;for
(int i =
0; i < cnt; i++
) cout << num1[i]
.id << endl;
for(
int i =
0; i < cnt2; i++
) cout << num2[i]
.id << endl;
}return0;
}
C C 程式設計學習 第19周 整數去重
題目鏈結 輸入n個整數的序列,要求對這個序列進行去重操作。所謂去重,是指對這個序列中每個重複出現的整數,只保留該數第一次出現的位置,刪除其餘位置。輸入格式 輸入包含兩行 第一行包含乙個正整數n 1 n 20000 表示第二行序列中數字的個數 第二行包含n個整數,整數之間以乙個空格分開。每個整數大於等...
C C 程式設計學習 第19周 整數奇偶排序
題目鏈結 蒜術師給了你乙個 10 個整數的序列,要求對其重新排序。排序要求 1.奇數在前,偶數在後 2.奇數按從大到小排序 3.偶數按從小到大排序。輸入格式 輸入一行,包含 10 個整數,彼此以乙個空格分開,每個整數的範圍是大於等於 0,小於等於 100。輸出格式 按照要求排序後輸出一行,包含排序後...
C C 程式設計學習 第6周 A B問題
題目鏈結 相信你已經學會 a b 問題了,那麼問題又來了 輸入兩個正整數 a 和 b 求 a b。輸入格式 一行,包含兩個正整數 a 和 b,中間用單個空格隔開。1 a,b 50000。輸出格式 乙個整數,即 a b 的值。3 412注意int可能存不下,所以要開long long。c語言 incl...