生日相同(結構體)

2021-10-02 09:18:56 字數 1188 閱讀 4647

描述

在乙個有180人的大班級中,存在兩個人生日相同的概率非常大,現給出每個學生的學號,出生月日。試找出所有生日相同的學生。

輸入第一行為整數n,表示有n個學生,n<100。

此後每行包含乙個字串和兩個整數,分別表示學生的學號(字串長度小於10)和出生月(1<=m<=12)日(1<=d<=31)。

學號、月、日之間用乙個空格分隔。

輸出對每組生日相同的學生,輸出一行,

其中前兩個數字表示月和日,後面跟著所有在當天出生的學生的學號,數字、學號之間都用乙個空格分隔。

對所有的輸出,要求按日期從前到後的順序輸出。

對生日相同的學號,按輸入的順序輸出。

樣例輸入

500508192 3 2

00508153 4 5

00508172 3 2

00508023 4 5

00509122 4 5

樣例輸出

3 2 00508192 00508172

4 5 00508153 00508023 00509122

題目分析:

注意標記使用過的學生就行了

**:

#include

#include

using

namespace std;

struct studentren[

101]

;bool

cmp(student,student)

;int flag=0;

intmain()

sort

(ren+

1,ren+n+

1,cmp)

;//利用sort演算法函式排序

for(

int i=

1;i<=n-

1;i++)if

(ren[i]

.yue==ren[j]

.yue&&ren[i]

.ri==ren[j]

.ri&&ren[j]

.num==0)

}if(flag)

cout<}return0;

}bool

cmp(student a,student b)

else

return a.yue}

生日相同(結構體)

描述 在乙個有180人的大班級中,存在兩個人生日相同的概率非常大,現給出每個學生的學號,出生月日。試找出所有生日相同的學生。輸入 第一行為整數n,表示有n個學生,n 100。此後每行包含乙個字串和兩個整數,分別表示學生的學號 字串長度小於10 和出生月 1 m 12 日 1 d 31 學號 月 日之...

2724 生日相同

兩個問題 1 多組輸入 記得用while迴圈 2 根據輸入時間進行排序 總時間限制 1000ms 記憶體限制 65536kb 描述在乙個有180人的大班級中,存在兩個人生日相同的概率非常大,現給出每個學生的學號,出生月日。試找出所有生日相同的學生。輸入第一行為整數n,表示有n個學生,n 100。此後...

生日不相同的概率

假設我們班有 50名同學,每個同學都報出自己的生日 每個同學的生日都不相重的概率只有 0.0296 如果有 100個同學,不相重的概率為 3.0725 10 7 相重複的概率如此之大與我們主觀想象不同。編寫程式,輸入同學的人數 n,計算出其生日不重複的概率。然後在用 的方法 利用隨機數產生每個同學的...