fork download
  1. #include<bits/stdc++.h>
  2. using namespace std;
  3.  
  4. #define ll long long
  5.  
  6.  
  7. // Convert string HH:MM to min
  8. int convert(string s){
  9. int a=s[0]-48;
  10. int b=s[1]-48;
  11. int res=(a*10+b)*60;
  12. a=s[3]-48;
  13. b=s[4]-48;
  14. res+=(a*10)+b;
  15. return res;
  16. }
  17.  
  18. void convert2(int n){
  19. int h=n/60;
  20. int min=n%60;
  21. if(h<=9) cout<<"0"<<h<<":";
  22. else cout<<h<<":";
  23. if(min<10)cout<<"0"<<min<<"\n";
  24. else cout<<min<<"\n";
  25. }
  26.  
  27. void solve(){
  28. int n,k;
  29. cin>>n>>k;
  30. vector<int>time(1441,0);
  31. for(int i=0;i<n;i++){
  32. string a,b,s,e;
  33. cin>>a>>b>>s>>e;
  34. int t1=convert(s),t2=convert(e);
  35. time[t1]++;
  36. time[t2+1]--;
  37. }
  38. for(int i=1;i<1440;i++)time[i]+=time[i-1];
  39. int c=0;
  40. for(int i=0;i<1440;i++){
  41. if(time[i]==0){
  42. c++;
  43. }
  44. else c=0;
  45. if(c==k){
  46. convert2(i-k+1);
  47. return;
  48. }
  49. }
  50. cout<<-1<<"\n";
  51. }
  52.  
  53. int main(){
  54. ios_base::sync_with_stdio(false);
  55. cin.tie(NULL);
  56. solve();
  57. return 0;
  58. }
Success #stdin #stdout 0.01s 5332KB
stdin
2 60
sam sleeps 00:00 08:30
al plays 09:30 21:45
stdout
21:46