UVA5-13 容我休息一会再看822
来源:互联网 发布:竞拍源码 编辑:程序博客网 时间:2024/05/30 12:30
#include<iostream> #include<algorithm> #include<vector> using namespace std; struct topic{ int tid,num,t0,t,dt,q_num,finished; }; struct member{ int pid,k,work_left,last; vector<int>pidk; bool operator <(const member&a) const{ if(a.last==last) return a.pid>pid; else return a.last>last; } }; vector<topic>topics; vector<member>staff; int main(){ int m,n,kase=0; while(cin>>m&&m){ int time=0,need=0; while(m--){ topic a; cin>>a.tid>>a.num>>a.t0>>a.t>>a.dt; a.q_num=a.finished=0; topics.push_back(a); } cin>>n; int z=0; while(n--){ z++; member a; int x; a.work_left=a.last=0; cin>>a.pid>>a.k; a.pid=z; for(int i=0;i<a.k;i++){ cin>>x; a.pidk.push_back(x); } staff.push_back(a); } while(1){ for(int i=0;i<topics.size();i++) if(time>=topics[i].t0&&topics[i].finished+topics[i].q_num<topics[i].num){ topics[i].t0+=topics[i].dt; topics[i].q_num=min(++topics[i].q_num,topics[i].num-topics[i].finished); } sort(staff.begin(),staff.end()); for(int i=0;i<staff.size();i++){ if(!staff[i].work_left) for(int j=0;j<staff[i].pidk.size();j++) for(int k=0;k<topics.size();k++) if(staff[i].pidk[j]==topics[k].tid&&topics[k].q_num){ staff[i].last=time; staff[i].work_left=topics[k].t; topics[k].q_num--; need=max(need,topics[k].t); if(++topics[k].finished==topics[k].num){ topics.erase(topics.begin()+k); if(!topics.size()){ time+=need; goto END; } } goto NEXT_P; } NEXT_P: continue; } time++; need=max(--need,0); for(int i=0;i<staff.size();i++) staff[i].work_left=max(--staff[i].work_left,0); } END: kase++; cout<<"Scenario "<<kase<<": All requests are serviced within "<<time<<" minutes."<<endl; staff.clear(); topics.clear(); } return 0; }
0 0
- UVA5-13 容我休息一会再看822
- 休息一会了
- 逆境时最好“休息一会”
- 我离开一会
- 让我休息一会儿
- 别拦我,让我悲伤一会
- 只有夜才能一会我的冷漠
- 休息
- 休息
- 休息
- 到底什么时候休息呢 我想想
- 我先去忙工作,一会清闲了再过来看看
- 天上人间,谁许谁一生等待 云间月上,我只期一夕一会
- 醉一会梦,一季一浅唱,我始终走不出你的梦境
- 欧文同一个离开一会看我过了客人挺好
- 休息休息休息休息休息休息休息休息休息休息休息休息休息
- 休息!休息!
- 也是我一个人在叫,电影也是我一个人再看
- 如何在C#中运行数学表达式字符串
- BZOJ 2693 jzptab 莫比乌斯反演
- 前端工具webpack和gulp
- 大数(加、减、乘、除、低精度*大数)模板详解(C++)
- Java Servlet API中文说明文档
- UVA5-13 容我休息一会再看822
- Unity 5.4 新功能:光照探头代理体
- MySQL · 引擎特性 · InnoDB IO子系统
- java 单例模式的七种写法
- Java 7之多线程并发容器
- CF 779B Weird Rounding 贪心
- 习题4-2 正方形
- Eclipse Android Studio 配置自己的调试证书
- (转)Rust :文件分层