knightL

B

Mar 19th, 2011
283
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.92 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <ctype.h>
  3. #include <string.h>
  4. #include <string>
  5. #include <iostream>
  6. #include <algorithm>
  7. #include <vector>
  8. #include <istream>
  9. using namespace std;
  10. #define INF 1000000000
  11. #define D 300
  12.  
  13. int main()
  14. {
  15.     int n;
  16.     int mt,st,dt;
  17.     string t;
  18.     cin>>n;
  19.     vector<pair<string,int> > s(n);
  20.     vector<string> res;
  21.     for(int i=0;i<n;i++)
  22.     {
  23.         cin>>s[i].first;
  24.         cin>>t;
  25.         for(int j=0;j<t.size();j++)
  26.         {
  27.             if(!isdigit(t[j]))
  28.                 t[j]=' ';
  29.         }
  30.         sscanf(t.c_str(),"%d%d%d",&mt,&st,&dt);
  31.         st+=mt*60;
  32.         dt+=st*10;
  33.         s[i].second=dt;
  34.     }
  35.     for(int i=0;i<n;i++)
  36.     {
  37.         int j;
  38.         int t=s[i].second+i*D;
  39.         for(j=0;j<n;j++)
  40.         {
  41.             if(j==i) continue;
  42.             if(s[j].second<s[i].second&&s[j].second+j*D<t)
  43.                 break;
  44.         }
  45.         if(j==n)
  46.             res.push_back(s[i].first);
  47.     }
  48.     sort(res.begin(),res.end());
  49.     printf("%u\n",res.size());
  50.     for(int i=0;i<res.size();i++)
  51.     {
  52.         cout<<res[i]<<endl;
  53.     }
  54.     return 0;
  55. }
Advertisement
Add Comment
Please, Sign In to add comment