Submission #107522

# Submission time Handle Problem Language Result Execution time Memory
107522 2019-04-25T01:09:10 Z kyunamk Seats (IOI18_seats) C++14
11 / 100
4000 ms 32612 KB
#include "seats.h"
#include <utility>

#include <iostream>

using namespace std;
std::vector<int> r;
std::vector<int> c;
std::vector< pair<int,int> > pos;

int K;
// int debug = true; //false;
int debug = false;
void give_initial_chart(int H, int W, std::vector<int> R, std::vector<int> C) {
  r = R;
  c = C;

  K = R.size();

  for ( int i = 0  ; i < K ; i++) {
    // if( debug ) cout << R[i] << C[i] << endl;
    pos.push_back(make_pair(R[i],C[i]));
  }
  // debug = true;
}

int r1,r2,c1,c2;
static inline int add_rect( int r, int c)
{
  if( r > r2 ) r2 = r;
  else if ( r < r1 ) r1 = r;

  if( c > c2 ) c2 = c;
  else if ( c < c1 ) c1 = c;

  return 0 ;
}
int swap_seats(int a, int b) {
  if( debug ) cout << "Swap : " << a << b << endl;
  pair<int,int> t = pos[b];
  pos[b]=pos[a];
  pos[a]=t;
  r1=r2=pos[0].first;
  c1=c2=pos[0].second;
  int cnt = 0;
  if( debug ) cout << 0 << r1 << r2 << c1 << c2 << endl;
  for( int i =0 ; i < K ; i++ ) {
    int changed = add_rect( pos[i].first , pos[i].second ) ;
    if( debug ) { cout << i << changed << r1 << r2 << c1 << c2 << endl; }
    if ( (r2-r1+1)*(c2-c1+1) == i+1 ) {
      if( debug ) cout << "BRect " << i+1 << endl;
      cnt++;
    } else {
    }
  }
  return cnt;
}
# Verdict Execution time Memory Grader output
1 Correct 5 ms 512 KB Output is correct
2 Correct 6 ms 384 KB Output is correct
3 Correct 6 ms 384 KB Output is correct
4 Correct 6 ms 384 KB Output is correct
5 Correct 8 ms 384 KB Output is correct
6 Correct 5 ms 512 KB Output is correct
7 Correct 5 ms 384 KB Output is correct
8 Correct 6 ms 512 KB Output is correct
9 Correct 6 ms 512 KB Output is correct
10 Correct 6 ms 512 KB Output is correct
11 Correct 5 ms 664 KB Output is correct
12 Correct 6 ms 512 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 5 ms 512 KB Output is correct
2 Correct 6 ms 384 KB Output is correct
3 Correct 6 ms 384 KB Output is correct
4 Correct 6 ms 384 KB Output is correct
5 Correct 8 ms 384 KB Output is correct
6 Correct 5 ms 512 KB Output is correct
7 Correct 5 ms 384 KB Output is correct
8 Correct 6 ms 512 KB Output is correct
9 Correct 6 ms 512 KB Output is correct
10 Correct 6 ms 512 KB Output is correct
11 Correct 5 ms 664 KB Output is correct
12 Correct 6 ms 512 KB Output is correct
13 Correct 155 ms 880 KB Output is correct
14 Correct 153 ms 844 KB Output is correct
15 Correct 203 ms 888 KB Output is correct
16 Correct 303 ms 888 KB Output is correct
17 Correct 154 ms 888 KB Output is correct
18 Correct 191 ms 888 KB Output is correct
19 Correct 215 ms 768 KB Output is correct
20 Correct 320 ms 888 KB Output is correct
21 Correct 225 ms 768 KB Output is correct
22 Correct 188 ms 888 KB Output is correct
# Verdict Execution time Memory Grader output
1 Execution timed out 4097 ms 32256 KB Time limit exceeded
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 154 ms 860 KB Output is correct
2 Correct 1539 ms 3704 KB Output is correct
3 Execution timed out 4008 ms 32356 KB Time limit exceeded
4 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 19 ms 1404 KB Output is correct
2 Correct 42 ms 1432 KB Output is correct
3 Correct 42 ms 1396 KB Output is correct
4 Correct 204 ms 1704 KB Output is correct
5 Correct 1525 ms 1780 KB Output is correct
6 Execution timed out 4069 ms 32612 KB Time limit exceeded
7 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 5 ms 512 KB Output is correct
2 Correct 6 ms 384 KB Output is correct
3 Correct 6 ms 384 KB Output is correct
4 Correct 6 ms 384 KB Output is correct
5 Correct 8 ms 384 KB Output is correct
6 Correct 5 ms 512 KB Output is correct
7 Correct 5 ms 384 KB Output is correct
8 Correct 6 ms 512 KB Output is correct
9 Correct 6 ms 512 KB Output is correct
10 Correct 6 ms 512 KB Output is correct
11 Correct 5 ms 664 KB Output is correct
12 Correct 6 ms 512 KB Output is correct
13 Correct 155 ms 880 KB Output is correct
14 Correct 153 ms 844 KB Output is correct
15 Correct 203 ms 888 KB Output is correct
16 Correct 303 ms 888 KB Output is correct
17 Correct 154 ms 888 KB Output is correct
18 Correct 191 ms 888 KB Output is correct
19 Correct 215 ms 768 KB Output is correct
20 Correct 320 ms 888 KB Output is correct
21 Correct 225 ms 768 KB Output is correct
22 Correct 188 ms 888 KB Output is correct
23 Execution timed out 4097 ms 32256 KB Time limit exceeded
24 Halted 0 ms 0 KB -