1.题目编号:1000
2.简单题意:一层楼沿着走廊南北向的两边各200个房间,为了装修,经理需要在各个办公室之间搬运办公桌,走廊一次只能通过一张办公桌,从一个房间到另一个房间最多用时10分钟,编写一道程序使用时最短。
3.简单思路形成过程:使用贪心算法,为了用时最短则需要搬运办公桌同时进行,使单独搬运的办公桌的次数最少,另外将走廊排上号,每个对面房间的走廊为一个号,便于计算
4.感想:这道题老师上课的时候讲过,在没讲之前根本想不出什么思路来,想来还是见得少,题目做的少,在看到一个题目的时候,需要想一想自己学到的知识,想一想它运用了什么方法,这个题看着题目内容一大堆,只要稍微想那么一小下,套用一下贪心算法,30几行就写完了,让一个复杂的题目变得简单。
5.AC的代码:
#include<iostream>
#include <memory.h>
using namespace std;
int main (){
int T,N,s,e,j,k,temp;
int move[200];
cin>>T;
while (T--){
memset(move,0,sizeof(move));
int max=0;
cin>>N;
for (int i=0;i<N;i++){
cin>>s>>e;
s=(s-1)/2;
e=(e-1)/2;
if(s>e){
temp=s;
s=e;
e=temp;
}
for (j=s;j<=e;j++){
move[j]++;
}}
for (k=0;k<200;k++){
if (max<move[k])
max=move[k];
}
cout<<max*10<<endl;
}
return 0;
}