POJ 1083

2014-11-24 11:46:34 · 作者: · 浏览: 0
问题是这样的:公司有400个房间,单号对双号对门,中间有一条走廊,现在要搬东西,给出要搬的次数,还有每次搬动的房间号,每次搬动需要10分钟,搬动过程中的那段走廊不能被使用,求最大搬动时长。
题解很简单,就是遍历所有的走廊,得出使用的次数,然后排序输出最大的就可以了.
[cpp]
#include
#include
#include
using namespace std;
int main()
{
int n,num,a[200][2],b[200];
cin>>n;
while(n--)
{
cin>>num;
memset(b,0,sizeof(b));
for(int i=0; i {
cin>>a[i][0]>>a[i][1];
if(a[i][0]>a[i][1])
{
int temp=a[i][0];
a[i][0]=a[i][1];
a[i][1]=temp;
} www.2cto.com
}
for(int j=1; j<=200; j++)
for(int k=0; k if((((a[k][0])<=2*j-1)&&((a[k][1])>=2*j-1)||(((a[k][0])<=2*j)&&((a[k][1])>=2*j))))
b[j-1]++;
sort(b,b+200);
if(b[199]!=0)
cout< else
cout<<"10"< }
return 0;
}
作者:szq123456123