codeforces#235_div2_B Sereja and Contests
题目地址: cf#235_div2_B
A题还是按惯例不记录了。
问错过的轮数,最多就是没有做的场数,最少就是每个连续的没做场数,÷2取ceil。嗯嗯 也是水题。 记得把p[x]取为1,这样来作为终结符
代码:
#include<iostream>
#include<cmath>
using namespace std;
int p[40001];
int main()
{
int x,k;
cin>>x>>k;
int flag=0;
int a,b;
for(int i=0;i<k;i++)
{
cin>>flag;
if(flag==1)
{ cin>>a>>b;
p[a]=1;
p[b]=1;
}
else
{
cin>>a;
p[a]=1;
}
}
int maxi=0;
for(int i=1;i<=x-1;i++)
if(p[i]==0) maxi++;
// 让p[x]==1 作为结束符
p[x]=1;
int mini=0;
double two=2.0;
int sum=0;
for(int i=1;i<=x;i++)
{
if(p[i]==1)
{
mini+=ceil(sum/two);
sum=0;
}
else sum++;
}
cout<<mini<<' '<<maxi<<endl;
}posted on 2014-03-11 15:34 814jingqi的ACM 阅读(150) 评论(0) 收藏 举报
浙公网安备 33010602011771号