您的位置:首页 > 其它

Codeforces Round #343 (Div. 2) -B. Far Relative’s Problem(模拟)

2016-03-14 17:02 471 查看
B. Far Relative’s Problem

time limit per test
2 seconds

memory limit per test
256 megabytes

input
standard input

output
standard output

Famil Door wants to celebrate his birthday with his friends from Far Far Away. He has
n friends and each of them can come to the party in a specific range of days of the year from
ai to
bi. Of course, Famil Door wants to have as many friends celebrating together with him as possible.

Far cars are as weird as Far Far Away citizens, so they can only carry two people of opposite gender, that is exactly one male and one female. However, Far is so far from here that no other transportation may be used to get to the party.

Famil Door should select some day of the year and invite some of his friends, such that they all are available at this moment and the number of male friends invited is equal to the number of female friends invited. Find the maximum number of friends that
may present at the party.

Input
The first line of the input contains a single integer n (1 ≤ n ≤ 5000) — then number of Famil Door's friends.

Then follow n lines, that describe the friends. Each line starts with a capital letter 'F' for female friends and with a capital letter 'M'
for male friends. Then follow two integers ai and
bi (1 ≤ ai ≤ bi ≤ 366),
providing that the i-th friend can come to the party from day
ai to day
bi inclusive.

Output
Print the maximum number of people that may come to Famil Door's party.

Examples

Input
4
M 151 307
F 343 352
F 117 145
M 24 128


Output
2


Input
6
M 128 130
F 128 131
F 131 140
F 131 141
M 131 200
M 140 200


Output
4


Note
In the first sample, friends 3 and
4 can come on any day in range [117, 128].

In the second sample, friends with indices 3,
4, 5 and 6 can come on day
140.

题意:

给出n个朋友,要男女数量相等,而且在同一区间内的最大数量。

AC代码:

#include<iostream>
#include<functional>
#include<algorithm>
#include<cstring>
#include<string>
#include<vector>
#include<cstdio>
#include<queue>
#include<cmath>
#include<map>
#include<set>
using namespace std;
#define CRL(a) memset(a,0,sizeof(a))
#define QWQ ios::sync_with_stdio(0)
#define inf 0x3f3f3f3f
typedef unsigned long long LL;
typedef long long ll;

const int T = 5000+50;
const int mod = 1000000007;

int val[T][2];

int main()
{

#ifdef zsc
freopen("input.txt","r",stdin);
#endif

int n,i,j,u,v;
char s[5];
while(~scanf("%d",&n))
{
memset(val,0,sizeof(val));
int cnt = 0;
while(n--)
{
scanf("%s%d%d",&s,&u,&v);
for(i=u;i<=v;++i){
if(s[0]=='M')
val[i][0]++;
else
val[i][1]++;
cnt = max(cnt,min(val[i][0],val[i][1])*2);
}
}
printf("%d\n",cnt);
}
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  codeforces 模拟