SHARE
TWEET

Untitled

a guest Dec 3rd, 2014 173 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #include <iostream>
  2. #include <string>
  3. #include <algorithm>
  4.  
  5. using namespace std;
  6.  
  7. int t = 1000001;
  8.  
  9. struct contest{
  10.  int start;
  11.  int end;
  12. };
  13.  
  14. bool contestcomp(contest a, contest b) {
  15.   return ((a.start < b.start) ? 1:0);
  16. };
  17.  
  18.  
  19.  
  20. int main()
  21. {
  22.  ios::sync_with_stdio(false);
  23.  int N, V, W; //N = contests, V = V wormholes, W = W wormholes
  24.  cin >> N >> V >> W;
  25.  contest contests[N];
  26.  
  27.  for(int i = 0; i < N; i++)
  28.  cin >> contests[i].start >> contests[i].end;
  29.  
  30.  sort(contests, contests + N, contestcomp);
  31.  
  32.  int X[V]; //Wormhole V starting times;
  33.  int Y[W]; //Wormhole W ending times;
  34.  
  35.  for(int i = 0; i < V; i++)
  36.  cin >> X[i];
  37.  
  38.  sort(X, X + V);
  39.  
  40.  for(int i = 0; i < W; i++)
  41.  cin >> Y[i];
  42.  
  43.  sort(Y, Y + W);
  44.  
  45.  //Scanning complete
  46.  
  47.  int k = 0;
  48.  for(int i = 0; i < N; i++) //iterate through contests;
  49.  {
  50.     int beststart = -1;
  51.         for(k = 0; k < V; k++)
  52.         {
  53.         if(X[k] <= contests[i].start)
  54.         beststart = X[k];
  55.         else{
  56.         k--;
  57.         break;
  58.         }
  59.         }
  60.         int bestend = -1;
  61.         for(int j = 0; j < W; j++)
  62.         {
  63.         if(Y[j] >= contests[i].end){
  64.         bestend = Y[j];
  65.         break;
  66.         }
  67.         }
  68.         if(beststart != -1 & bestend != -1)
  69.         t = min(t, bestend - beststart + 1);
  70.  
  71.  }
  72.  cout << t;
  73.  
  74. }
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top