📄 cpp2.cpp
字号:
#include<stdio.h>
#include<string.h>
int main()
{
int a[210][2],d[210],g[210],n,w;
scanf("%d",&n);
while(n--)
{
scanf("%d",&w);
for(int i=0;i<w;i++)
scanf("%d%d",&a[i][0],&a[i][1]);
int sum=0,kk,gg=0;
memset(d,0,sizeof(d));
while(1)
{
sum++;//每十分钟一个轮回!!
memset(g,0,sizeof(g));//纪录这段时间能办的点
for(int i=0;i<w;i++)
if(d[i]==0)
{
kk=1;
for(int t=0;t<w;t++)
if(i!=t&&g[t]==1)
{
int maxi=(a[i][0]-1)/2*2+1>(a[i][1]-1)/2*2+1?(a[i][0]-1)/2*2+1:(a[i][1]-1)/2*2+1;//转为奇数!!
int mini=(a[i][0]-1)/2*2+1<(a[i][1]-1)/2*2+1?(a[i][0]-1)/2*2+1:(a[i][1]-1)/2*2+1;
int maxt=(a[t][0]-1)/2*2+1>(a[t][1]-1)/2*2+1?(a[t][0]-1)/2*2+1:(a[t][1]-1)/2*2+1;
int mint=(a[t][0]-1)/2*2+1<(a[t][1]-1)/2*2+1?(a[t][0]-1)/2*2+1:(a[t][1]-1)/2*2+1;
kk*=maxi<mint||mini>maxt;//两个集合没交集
}
if(kk)
{
gg++;
d[i]=1;
g[i]=1;
}
}
if(gg==w)
break;
}
printf("%d\n",10*sum);
}
return 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -