本题和南阳上的那个 房间安排 一个道理,不过就是加了个是两排房子,需要化简;
简单思想:
初始化数组,如果需要移动,自增一,代表一个操作,最后便历,找出操作数做多的那个,就是我们需要的最长时间
代码:
#include<stdio.h> #include<string.h> int main() { int T,a[250],max,i,j,f,t,n,x; scanf("%d",&T); while(T--) { scanf("%d",&n); memset(a,0,sizeof(a)); for(i=0;i<n;++i) { scanf("%d%d",&f,&t); f=(f+1)/2; t=(t+1)/2; if(f>t) { x=t; t=f; f=x; } for(j=f;j<=t;++j) a[j]++; } max=-1; for(i=0;i<250;++i) if(max<a[i]) max=a[i]; printf("%d\n",max*10); } return 0; }