【CCF-CSP】201709-2-公共钥匙盒100分(含详细注释) 代码如下: #include <iostream>#include <algorithm>//sort()函数头文件using namespace std;#define N 1002typedef struct Key{int name;//钥匙序号int begin;//开始时间int time;//持续时间int flag=0;//flag=1:此借出、归还操作已执行}Key;bool Begin...
第一位老师从时刻3开始使用4号教室的钥匙,使用3单位时间,所以在时刻6还钥匙。第二位老师从时刻2开始使用钥匙,使用7单位时间,所以在时刻9还钥匙。 每个关键时刻后的钥匙状态如下(X表示空): 时刻2后为1X345; 时刻3后为1X3X5; 时刻6后为143X5; 时刻9后为14325。 样例输入 5 7 1 1 14 3 3 12 1 15 12...
用优先队列对各个事件的发生先后记录即可: #include<iostream>#include<queue>usingnamespacestd;intkey[1001];structnode {intno;intbegin;intend;inttype;//表示借,1表示时在还node(intno,intbegin,intend,inttype):no(no),begin(begin),end(end),type(type) { } friendbooloperator<(node a, node b) {...
mx=max(mx,s+c); keep[s].emplace(w); back[s+c].emplace(w); }for(inti=1;i<=mx;i++){if(!back[i].empty()){for(set<int>::iterator it=back[i].begin();it!=back[i].end();it++){for(inti=1;i<=N;i++){if(a[i]==0){ a[i]=(*it);break; } } } }if(!keep[i]...
CSP201709-2 公共钥匙盒 Java 考试的时候不知道哪一步错了,又要考试了想着还是再写一下吧。 importjava.util.*;publicclassCsp2017092 {staticList<Use> uses =newArrayList<Use>();staticint[] list;staticint[] weizhi;staticPriorityQueue<Integer> pq =newPriorityQueue<Integer>();publicstaticvoidmain(String...
公共钥匙盒 试题编号: 201709-2 试题名称: 公共钥匙盒 时间限制: 1.0s 内存限制: 256.0MB 问题描述 有一个学校的老师共用N个教室,按照规定,所有的钥匙都必须放在公共钥匙盒里,老师不能带钥匙回家。每次老师上课前,都从公共钥匙盒里找到自己上课的教室的钥匙去开门,