1050 moving table
来源:互联网 发布:统计贸易数据自查报告 编辑:程序博客网 时间:2024/04/30 18:59
Moving Tables
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 19269 Accepted Submission(s): 6581
The floor has 200 rooms each on the north side and south side along the corridor. Recently the Company made a plan to reform its system. The reform includes moving a lot of tables between rooms. Because the corridor is narrow and all the tables are big, only one table can pass through the corridor. Some plan is needed to make the moving efficient. The manager figured out the following plan: Moving a table from a room to another room can be done within 10 minutes. When moving a table from room i to room j, the part of the corridor between the front of room i and the front of room j is used. So, during each 10 minutes, several moving between two rooms not sharing the same part of the corridor will be done simultaneously. To make it clear the manager illustrated the possible cases and impossible cases of simultaneous moving.
For each room, at most one table will be either moved in or moved out. Now, the manager seeks out a method to minimize the time to move all the tables. Your job is to write a program to solve the manager’s problem.
4
10 20
30 40
50 60
70 80
2
1 3
2 200
3
10 100
20 80
30 50
20
30
思路:贪心算法,找最多重合的走廊位置,走廊的位置可以由(n+1)/2决定,能想到这完成这一题就没问题了。
代码:
#include<stdio.h>
#include<algorithm>
using namespace std;
int main()
{
int n,m;
scanf("%d",&n);
while(n--)
{
int i,j,k,r,t,a=0,l;
int s[300]={0};
scanf("%d",&m);
for(j=0;j<m;j++)
{
scanf("%d %d",&k,&t);
r=k,l=t;
k=max(r,l);
t=min(r,l);
//printf("%d %d@\n",k,t);
// if(t%2==0)
// t=t-1;
// if(k%2!=0)
// k=k+1;
for(i=(t+1)/2;i<=(k+1)/2;i++)//走廊号
{
s[i]+=1;
if(a<s[i])
a=s[i];
}
}
printf("%d\n",a*10);
}
//while(1);
return 0;
}
- hdu 1050 Moving Table
- HDU 1050 moving table
- 1050 moving table
- moving table
- hdu moving table.
- ACM--moving table
- HDU1050-Moving Table
- CareerCup Facebook Alex moving on a table
- 1050 Moving Tables
- HDU 1050 Moving Tables
- hdu 1050 moving tables
- HDU-1050 Moving Tables
- hdu-1050-Moving Tables
- HDU 1050 Moving Tables
- HDU 1050 Moving Tables
- hdu 1050 moving tables
- hdu 1050 Moving Tables
- hdu 1050 Moving Tables
- 合同如火如荼有态度与合同任何人
- uva 10288 - Coupons(概率)
- 2014腾讯实习校招
- poj 2296 2-SAT(无矩形相交的最大边长)
- Porting WiFi drivers to Android
- 1050 moving table
- 有罪推定
- MySQL存储二进制数据
- iOS应用程序生命周期各个函数方法详解
- 和他人还让他好如同废物染发如果风王夫人个人各
- 【NOIP模拟】20140809 题解 & 总结
- 死亡游戏(链表)
- 大陆法
- 欢迎您在新浪博客安家