题意:
真是一个奇葩的人,邀请他人为自己过生日,还必须是一对一对的。言归,给出性别和当前朋友的空闲时间,问最大可以邀请几对,既是多少个人。
思路:
简单的模拟题目,统计出当天男女性的空闲人数,再次比较即可。
AC code:
#include<stdio.h>
#include<cstring>
#include<cmath>
#include<algorithm>
#define HardBoy main()
#define ForMyLove return 0;
using namespace std;
const int MYDD = 1103;
int HardBoy {
int n, M[MYDD], F[MYDD];
char vv[2];
scanf("%d", &n);
memset(M, 0, sizeof(M));
memset(F, 0, sizeof(F));
while(n--){
// printf("-> BUG***");
int a, b;
scanf("%s %d %d", vv, &a, &b);
if(vv[0] == 'M')
for(int j = a; j <= b; j++){
M[j]++;
}
else {
for(int j = a; j <= b; j++)
F[j]++;
}
}
int ans = 0;/* 神经蛋一样的初始化 -1 尴尬*/
for(int j = 1; j <= 366; j++){
if(M[j] > 0 && F[j] > 0){
ans = max(min(M[j], F[j]), ans);
// printf("Day -> %d :%d\n", j, min(M[j], F[j]));
}
}
printf("%d\n", ans*2);
ForMyLove
}