結果

問題 No.580 旅館の予約計画
ユーザー ciel
提出日時 2017-10-23 02:01:49
言語 C++14
(gcc 8.2.0)
結果
AC  
実行時間 4 ms
コード長 749 Byte
コンパイル時間 454 ms
使用メモリ 1,340 KB
最終ジャッジ日時 2019-04-25 22:08:23

テストケース

テストケース表示
入力 結果 実行時間
使用メモリ
input00.txt AC 3 ms
1,328 KB
input01.txt AC 3 ms
1,328 KB
input02.txt AC 2 ms
1,324 KB
input03.txt AC 3 ms
1,320 KB
input04.txt AC 3 ms
1,328 KB
input05.txt AC 3 ms
1,324 KB
input06.txt AC 2 ms
1,324 KB
input07.txt AC 3 ms
1,332 KB
input08.txt AC 2 ms
1,332 KB
input09.txt AC 3 ms
1,328 KB
input10.txt AC 3 ms
1,332 KB
input11.txt AC 3 ms
1,328 KB
input12.txt AC 3 ms
1,324 KB
input13.txt AC 3 ms
1,332 KB
input14.txt AC 4 ms
1,328 KB
input15.txt AC 3 ms
1,336 KB
input16.txt AC 4 ms
1,340 KB
input17.txt AC 4 ms
1,336 KB
input18.txt AC 4 ms
1,336 KB
input19.txt AC 4 ms
1,332 KB
input20.txt AC 3 ms
1,336 KB
input21.txt AC 3 ms
1,340 KB
input22.txt AC 3 ms
1,332 KB
input23.txt AC 4 ms
1,336 KB
input24.txt AC 3 ms
1,336 KB
input25.txt AC 2 ms
1,336 KB
input26.txt AC 3 ms
1,328 KB
input27.txt AC 3 ms
1,328 KB
input28.txt AC 3 ms
1,328 KB
input29.txt AC 3 ms
1,328 KB
input30.txt AC 4 ms
1,336 KB
input31.txt AC 4 ms
1,336 KB
input32.txt AC 3 ms
1,332 KB
input33.txt AC 4 ms
1,340 KB
input34.txt AC 3 ms
1,336 KB
input35.txt AC 3 ms
1,328 KB
テストケース一括ダウンロード

ソースコード

diff #
#include <vector>
#include <set>
#include <algorithm>
#include <cstdio>
using namespace std;
typedef pair<int,int> pii;
int main(){
	int n,m;
	scanf("%d%d",&n,&m);
	vector<pii> data(m);
	for(int i=0;i<m;i++){
		int i1,i2,i3,i4,i5,i6;
		scanf("%d %d:%d %d %d:%d",&i1,&i2,&i3,&i4,&i5,&i6);
		data[i]=make_pair(i1*1440+i2*60+i3,i4*1440+i5*60+i6);
	}
	sort(data.begin(),data.end(),[](const pii &a,const pii &b){return a.second<b.second;});
	multiset<int> se;
	int r=0;
	for(int i=0;i<n;i++)se.insert(0);
	for(int i=0;i<m;i++){
		//部屋iの(出)時刻がdata[i]の入時刻より早い中で最大
		auto it=se.lower_bound(data[i].first);
		if(it!=se.begin()){
			--it;
			se.erase(it);
			se.insert(data[i].second);
			r++;
		}
	}
	printf("%d\n",r);
}
0