fork download
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3.  
  4. using ll =long long;
  5.  
  6. ll convert(string s){
  7. ll x=int(s[0])-48;
  8. ll y=int(s[1])-48;
  9. // cout<<x<<" "<<y<<endl;
  10. ll z=x*10+y;
  11. x=int(s[3])-48;
  12. y=int(s[4])-48;
  13. return z*60+x*10+y;
  14.  
  15. }
  16.  
  17. void ck(ll g){
  18. ll u=g/60;
  19. ll y=g%60;
  20. if(u<=9){
  21. cout<<"0";
  22. cout<<u;
  23. }
  24. else cout<<u;
  25. cout<<":";
  26. if(y<=9){
  27. cout<<"0";
  28. cout<<y<<endl;
  29. }
  30. else cout<<y<<endl;
  31. }
  32. int main() {
  33. // your code goes here
  34. ll n;
  35. cin>>n;
  36. ll k;
  37. cin>>k;
  38. vector<ll>y(1441,0);
  39. for(ll i=0;i<n;i++){
  40. string a,b;
  41. cin>>a>>b;
  42. string u,v;
  43. cin>>u>>v;
  44. ll t1=convert(u);
  45. ll t2=convert(v);
  46. y[t1]=y[t1]+1;
  47. y[t2+1]=y[t2+1]-1;
  48.  
  49. }
  50. ll i=1;
  51. while(i<=1440){
  52. y[i]=y[i]+y[i-1];
  53. i++;
  54. }
  55. int c=0,g=0;
  56. for(ll i=0;i<1440;i++){
  57. if(y[i]==0){
  58. c++;
  59. if(c==k){
  60. ck(i-k+1);
  61. g=1;
  62. break;
  63. }
  64. }
  65. else c=0;
  66. }
  67.  
  68. if(g==0) cout<<-1<<endl;
  69.  
  70.  
  71. return 0;
  72. }
Success #stdin #stdout 0s 5324KB
stdin
2 60
sam sleep 12:00 23:59
al lunch 00:00 08:03
stdout
08:04