結果

問題 No.2543 Many Meetings
ユーザー HIKKY1317
提出日時 2023-11-24 22:52:48
言語 C++14
(gcc 13.3.0 + boost 1.87.0)
結果
WA  
実行時間 -
コード長 941 bytes
コンパイル時間 1,820 ms
コンパイル使用メモリ 173,956 KB
実行使用メモリ 15,068 KB
最終ジャッジ日時 2024-09-26 09:43:53
合計ジャッジ時間 9,639 ms
ジャッジサーバーID
(参考情報)
judge2 / judge1
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 5 WA * 5 TLE * 1 -- * 29
権限があれば一括ダウンロードができます

ソースコード

diff #
プレゼンテーションモードにする

#include <bits/stdc++.h>
using namespace std;
int main(){
int N;
long long K;
cin >> N >> K;
long long L[N+1],R[N+1];
vector<pair<long long, long long>> tmp;
for(int i=1;i<=N;i++){
cin >> L[i] >> R[i];
tmp.push_back(make_pair(R[i],L[i]));
}
sort(tmp.begin(),tmp.end());
for(int i=1;i<=N;i++){
R[i]=tmp[i-1].first;
L[i]=tmp[i-1].second;
}
long long ans=1e18;
long long CurrentTime=0,Answer=0;
for(int i=1;i<=N;i++){
if(CurrentTime<=L[i]){
CurrentTime=R[i];
Answer++;
}
if(Answer==K){
ans=CurrentTime-L[1];
}
}
if(Answer<K){
cout << -1 << endl;
return 0;
}
for(int i=1;i<=N;i++){
CurrentTime=0,Answer=0;
for(int j=i;CurrentTime-L[i]<=ans;j++){
if(CurrentTime<=L[j]){
CurrentTime=R[j];
Answer++;
}
if(Answer==K){
ans=min(ans,CurrentTime-L[i]);
break;
}
}
}
cout << ans << endl;
}
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
0