1199: 房间安排
1199: 房間安排
Time Limit:?1 Sec??Memory Limit:?128 MBSubmit:?1??Solved:?1
[Submit][Status][Web Board]
Description
2010年上海世界博覽會(huì)(Expo2010),是第41屆世界博覽會(huì)。于2010年5月1日至10月31日期間,在中國(guó)上海市舉行。本次世博會(huì)也是由中國(guó)舉辦的首屆世界博覽會(huì)。上海世博會(huì)以“城市,讓生活更美好”(Better City,Better Life)為主題,將充分探索21世紀(jì)城市生活。
這次世博會(huì)總投資達(dá)450億人民幣,創(chuàng)造了世界博覽會(huì)史上的最大規(guī)模記錄。吸引200個(gè)國(guó)家和國(guó)際組織參展。預(yù)計(jì)有7000萬(wàn)人次的參觀者。
為了更好地接待在這期間來(lái)自世界各地的參觀者,如何合理安排各賓館的住房問(wèn)題提到了日程。組委會(huì)已接到了大量的客戶(hù)住宿定單,每張定單的內(nèi)容包括要住宿的房間數(shù),開(kāi)始住宿時(shí)間和要住的天數(shù)。為了便于整個(gè)城市各賓館的管理,組委會(huì)希望對(duì)這些定單進(jìn)行安排,目的是用盡可能少的房間來(lái)滿(mǎn)足這些定單,以便空出更多的房間用于安排流動(dòng)游客。
組委會(huì)請(qǐng)求DR.Kong來(lái)完成這個(gè)任務(wù),對(duì)這些定單進(jìn)行合理安排,使得滿(mǎn)足這些定單要求的房間數(shù)最少。
假設(shè):某個(gè)定單上的游客一旦被安排到某房間,在他預(yù)定住宿的期間內(nèi)是不換房間的。為了簡(jiǎn)化描述,定單上的開(kāi)始住宿時(shí)間為距離現(xiàn)在的第幾天。例如,定單為(10,30,5)表示游客要求使用10個(gè)房間,第30天開(kāi)始連住5天。
Input
第一行:T 表示有T組測(cè)試數(shù)據(jù)
每組測(cè)試數(shù)據(jù)第一行:N 表示定單數(shù)
每組測(cè)試數(shù)據(jù)接下來(lái)有N行,每行有三個(gè)整數(shù) A B C 表示房間數(shù),開(kāi)始住宿時(shí)間和天數(shù)
1<=T<=100
1<=N<=10000 1<=A<=10 1<=B<=180 1<=c<=10
Output
輸出一個(gè)整數(shù),為滿(mǎn)足所有定單要求的最少房間數(shù)。
Sample Input
1
3
3 10 4
4 9 3
3 12 6 Sample Output
7 my answer:#include<iostream>
#include<algorithm>
#include<cmath>
using namespace std;
typedef struct sq{int begin;int days;int rooms;int end;
}sq;
int main()
{int T,n;cin>>T;while(T--){cin>>n;int next[1000]={0},maxbegin=100,maxend=0;sq a[1000];for(int i=0;i!=n;i++){cin>>a[i].rooms>>a[i].begin>>a[i].days;a[i].end=a[i].begin+a[i].days-1;if(a[i].begin<maxbegin)maxbegin=a[i].begin;if(a[i].end>maxend)maxend=a[i].end;for(int j=a[i].begin;j<=a[i].end;j++){next[j]+=a[i].rooms;}}int maxroom=0;for(int i=maxbegin;i<=maxend;i++){if(maxroom<next[i])maxroom=next[i];}cout<<maxroom<<endl;}return 0;
}
轉(zhuǎn)載于:https://www.cnblogs.com/NYNU-ACM/p/4248811.html
總結(jié)
以上是生活随笔為你收集整理的1199: 房间安排的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 花有百样红下一句是什么呢?
- 下一篇: STM32学习笔记9(SysTick滴答