在乙個有200人的大班級中,存在兩個人生日相同的概率非常大,現給出每個學生的學號,出生月日,試找出所有生日相同的學生。
第一行為整數n,表示有n個學生,n<=200。此後每行包含乙個字串和兩個整數,分別表示學生的學號(字串長度為11位)和出生月(1<=m<=12)日(1<=d<=31),學號、月、日之間用乙個空格分隔。
對每組生日相同的學生,輸出一行,其中前兩個數字表示月和日,後面跟著所有在當天出生的學生的學號,數字、學號之間都用乙個空格分隔。對所有的輸出,要求按日期從前到後的順序輸出。對生日相同的學號,按輸入的順序輸出。
607101020105 3 15
07101020115 4 5
07101020118 3 15
07101020108 4 5
07101020111 4 5
07101020121 8 10
3 15 07101020105 071010201184 5 07101020115 07101020108 07101020111
8 10 07101020121
#include
#include
using namespace std;
struct studentstu[201];
bool compare(student a,student b)
sort(stu,stu+n,compare);
for(i=0;ielse
}else}}
return 0;
}
相同生日概率(經典問題)
題意 多組案例。每組案例給出一年的天數 不一定是地球一年365天,火星上一年有669天 問開展的生日party上需要有多少人才能滿足至少兩人生日相同的機率達到至少0.5。案例 sample input 2365 669sample output case 1 22 case 2 30 分析 題目應從...
100 相同的樹
鏈結 給定兩個二叉樹,編寫乙個函式來檢驗它們是否相同。如果兩個樹在結構上相同,並且節點具有相同的值,則認為它們是相同的。示例 1 輸入 1 1 2 3 2 3 1,2,3 1,2,3 輸出 true示例 2 輸入 1 1 2 2 1,2 1,null,2 輸出 false示例 3 輸入 1 1 2 ...
Oracle exists用法,查詢相同或相似資料
sql中經常遇到如下情況,在一張表中有兩條記錄基本完全一樣,某個或某幾個欄位有些許差別,這時候可能需要我們踢出這些有差別的資料,即兩條或多條記錄中只保留一項。如下 表timeand 針對time欄位相同時有不同total和name的情形,每當遇到相同的則只取其中一條資料,最簡單的實現方法有兩種 1 ...