題目:單身那時和女士配對,每次最年長的男士和年齡最相近的女士配對,
如果男士都有伴侶則輸出0,否則輸出沒有伴侶的男士個數,并輸出年齡最小的男士年齡。
分析:簡單題。比較數量,輸出最小值即可。
如果,單身男士的數量不多餘單身女士的數量則輸出0;
否則,沒有伴侶的男士個數即為女士數量減去男士數量,并輸出年齡最小的男士年齡。
說明:這裡使用排序找最小值,枚舉更快,╮(╯▽╰)╭。
#include <algorithm>
#include <iostream>
#include <cstdlib>
#include <cstring>
#include <cstdio>
using namespace std;
int bachelor[10001];
int spinster[10001];
int main()
{
int bachelor_size, spinster_size, cases = 0;
while (~scanf("%d%d",&bachelor_size,&spinster_size)) {
if (!bachelor_size && !spinster_size) {
break;
}
for (int i = 0; i < bachelor_size; ++ i) {
scanf("%d",&bachelor[i]);
}
sort(bachelor, bachelor+bachelor_size);
for (int i = 0; i < spinster_size; ++ i) {
scanf("%d",&spinster[i]);
}
printf("Case %d:",++ cases);
if (bachelor_size <= spinster_size) {
printf(" %d\n",0);
}else {
printf(" %d %d\n",bachelor_size-spinster_size,bachelor[0]);
}
}
return 0;
}