Submission #296516

# Submission time Handle Problem Language Result Execution time Memory
296516 2020-09-10T15:37:16 Z humbertoyusta Vision Program (IOI19_vision) C++14
52 / 100
5 ms 1568 KB
#include "vision.h"
#include<bits/stdc++.h>
using namespace std;
#define db(x) cerr << #x << ": " << (x) << '\n';
#define f first
#define s second
#define pb push_back
#define ii pair<int,int>

vector<int> v[40040];

void construct_network(int H, int W, int K) {

    if( max(W,H) <= 30 || min(W,H) == 1 ){

        for(int i=0; i<H; i++)
            for(int j=0; j<W; j++)
                for(int k=0; k<H; k++)
                    for(int l=0; l<W; l++)
                        if( abs(l - j) + abs(k - i) == K )
                            if( k >= i ) v[i*W+j].pb(k*W+l);

        vector<int> vx;
        int cnt = W*H-1;
        for(int i=0; i<W*H; i++){
            if( v[i].size() ){
                add_or(v[i]);
                ++cnt;
                vector<int> n;
                n.pb(i);
                n.pb(cnt);
                add_and(n);
                ++cnt;
                vx.pb(cnt);
            }
        }

        add_or(vx);

    }
    else{

        vector<ii> v;
        for(int i=0; i<1; i++)
            for(int j=0; j<1; j++)
                for(int k=0; k<H; k++)
                    for(int l=0; l<W; l++)
                        if( abs(l - j) + abs(k - i) == K )
                            v.pb({i*W+j,k*W+l});

        for( auto i : v ){
            vector<int> N;
            N.pb(i.f);
            N.pb(i.s);
            add_and(N);
        }

        vector<int> vx;
        for(int i=W*H; i<W*H+v.size(); i++)
            vx.pb(i);
        add_or(vx);

    }
}

Compilation message

vision.cpp: In function 'void construct_network(int, int, int)':
vision.cpp:59:25: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<std::pair<int, int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   59 |         for(int i=W*H; i<W*H+v.size(); i++)
      |                        ~^~~~~~~~~~~~~
# Verdict Execution time Memory Grader output
1 Correct 1 ms 1280 KB Output is correct
2 Correct 1 ms 1280 KB Output is correct
3 Correct 1 ms 1280 KB Output is correct
4 Correct 1 ms 1280 KB Output is correct
5 Correct 1 ms 1280 KB Output is correct
6 Correct 1 ms 1280 KB Output is correct
7 Correct 1 ms 1280 KB Output is correct
8 Correct 1 ms 1280 KB Output is correct
9 Correct 1 ms 1280 KB Output is correct
10 Correct 1 ms 1280 KB Output is correct
11 Correct 1 ms 1280 KB Output is correct
12 Correct 1 ms 1280 KB Output is correct
13 Correct 1 ms 1280 KB Output is correct
14 Correct 1 ms 1280 KB Output is correct
15 Correct 1 ms 1280 KB Output is correct
16 Correct 1 ms 1280 KB Output is correct
17 Correct 1 ms 1280 KB Output is correct
18 Correct 1 ms 1280 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 1280 KB Output is correct
2 Correct 1 ms 1280 KB Output is correct
3 Correct 1 ms 1280 KB Output is correct
4 Correct 1 ms 1280 KB Output is correct
5 Correct 1 ms 1280 KB Output is correct
6 Correct 1 ms 1280 KB Output is correct
7 Correct 1 ms 1280 KB Output is correct
8 Correct 1 ms 1280 KB Output is correct
9 Correct 1 ms 1280 KB Output is correct
10 Correct 1 ms 1280 KB Output is correct
11 Correct 1 ms 1280 KB Output is correct
12 Correct 1 ms 1280 KB Output is correct
13 Correct 1 ms 1280 KB Output is correct
14 Correct 1 ms 1280 KB Output is correct
15 Correct 1 ms 1280 KB Output is correct
16 Correct 1 ms 1280 KB Output is correct
17 Correct 1 ms 1280 KB Output is correct
18 Correct 1 ms 1280 KB Output is correct
19 Correct 1 ms 1280 KB Output is correct
20 Correct 1 ms 1280 KB Output is correct
21 Correct 1 ms 1280 KB Output is correct
22 Correct 1 ms 1280 KB Output is correct
23 Correct 1 ms 1280 KB Output is correct
24 Correct 1 ms 1280 KB Output is correct
25 Correct 1 ms 1280 KB Output is correct
26 Correct 1 ms 1280 KB Output is correct
27 Correct 1 ms 1280 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 1280 KB Output is correct
2 Correct 1 ms 1280 KB Output is correct
3 Correct 1 ms 1280 KB Output is correct
4 Correct 1 ms 1280 KB Output is correct
5 Correct 1 ms 1280 KB Output is correct
6 Correct 1 ms 1280 KB Output is correct
7 Correct 1 ms 1280 KB Output is correct
8 Correct 1 ms 1280 KB Output is correct
9 Correct 1 ms 1280 KB Output is correct
10 Correct 1 ms 1280 KB Output is correct
11 Correct 1 ms 1280 KB Output is correct
12 Correct 1 ms 1280 KB Output is correct
13 Correct 1 ms 1280 KB Output is correct
14 Correct 1 ms 1280 KB Output is correct
15 Correct 1 ms 1280 KB Output is correct
16 Correct 1 ms 1280 KB Output is correct
17 Correct 1 ms 1280 KB Output is correct
18 Correct 1 ms 1280 KB Output is correct
19 Correct 1 ms 1280 KB Output is correct
20 Correct 1 ms 1280 KB Output is correct
21 Correct 1 ms 1280 KB Output is correct
22 Correct 1 ms 1280 KB Output is correct
23 Correct 1 ms 1280 KB Output is correct
24 Correct 1 ms 1280 KB Output is correct
25 Correct 1 ms 1280 KB Output is correct
26 Correct 1 ms 1280 KB Output is correct
27 Correct 1 ms 1280 KB Output is correct
28 Correct 5 ms 1536 KB Output is correct
29 Correct 1 ms 1280 KB Output is correct
30 Correct 1 ms 1280 KB Output is correct
31 Correct 1 ms 1280 KB Output is correct
32 Correct 2 ms 1408 KB Output is correct
33 Correct 3 ms 1408 KB Output is correct
34 Correct 5 ms 1536 KB Output is correct
35 Correct 4 ms 1568 KB Output is correct
36 Correct 3 ms 1280 KB Output is correct
37 Correct 2 ms 1280 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 1280 KB Output is correct
2 Correct 1 ms 1280 KB Output is correct
3 Correct 1 ms 1280 KB Output is correct
4 Correct 1 ms 1280 KB Output is correct
5 Correct 1 ms 1280 KB Output is correct
6 Correct 1 ms 1280 KB Output is correct
7 Correct 1 ms 1280 KB Output is correct
8 Correct 1 ms 1280 KB Output is correct
9 Correct 1 ms 1280 KB Output is correct
10 Correct 1 ms 1280 KB Output is correct
11 Correct 1 ms 1280 KB Output is correct
12 Correct 1 ms 1280 KB Output is correct
13 Correct 1 ms 1280 KB Output is correct
14 Correct 1 ms 1280 KB Output is correct
15 Correct 1 ms 1280 KB Output is correct
16 Correct 1 ms 1280 KB Output is correct
17 Correct 1 ms 1280 KB Output is correct
18 Correct 1 ms 1280 KB Output is correct
19 Correct 1 ms 1280 KB Output is correct
20 Correct 1 ms 1280 KB Output is correct
21 Correct 1 ms 1280 KB Output is correct
22 Correct 1 ms 1280 KB Output is correct
23 Correct 1 ms 1280 KB Output is correct
24 Correct 1 ms 1280 KB Output is correct
25 Correct 1 ms 1280 KB Output is correct
26 Correct 1 ms 1280 KB Output is correct
27 Correct 1 ms 1280 KB Output is correct
28 Correct 5 ms 1536 KB Output is correct
29 Correct 1 ms 1280 KB Output is correct
30 Correct 1 ms 1280 KB Output is correct
31 Correct 1 ms 1280 KB Output is correct
32 Correct 2 ms 1408 KB Output is correct
33 Correct 3 ms 1408 KB Output is correct
34 Correct 5 ms 1536 KB Output is correct
35 Correct 4 ms 1568 KB Output is correct
36 Correct 3 ms 1280 KB Output is correct
37 Correct 2 ms 1280 KB Output is correct
38 Incorrect 1 ms 1280 KB on inputs (8, 61), (22, 97), expected 1, but computed 0
39 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 1280 KB Output is correct
2 Correct 1 ms 1280 KB Output is correct
3 Correct 1 ms 1312 KB Output is correct
4 Correct 1 ms 1280 KB Output is correct
5 Correct 1 ms 1280 KB Output is correct
6 Correct 1 ms 1280 KB Output is correct
7 Correct 1 ms 1280 KB Output is correct
8 Correct 1 ms 1280 KB Output is correct
9 Correct 2 ms 1280 KB Output is correct
10 Correct 1 ms 1280 KB Output is correct
11 Correct 1 ms 1280 KB Output is correct
12 Correct 1 ms 1280 KB Output is correct
13 Correct 1 ms 1280 KB Output is correct
14 Correct 1 ms 1280 KB Output is correct
15 Correct 1 ms 1280 KB Output is correct
16 Correct 1 ms 1280 KB Output is correct
17 Correct 1 ms 1280 KB Output is correct
18 Correct 1 ms 1280 KB Output is correct
19 Correct 1 ms 1280 KB Output is correct
20 Correct 1 ms 1280 KB Output is correct
21 Correct 1 ms 1280 KB Output is correct
22 Correct 1 ms 1280 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 1280 KB Output is correct
2 Correct 1 ms 1280 KB Output is correct
3 Correct 1 ms 1280 KB Output is correct
4 Correct 1 ms 1280 KB Output is correct
5 Correct 1 ms 1280 KB Output is correct
6 Correct 1 ms 1280 KB Output is correct
7 Correct 1 ms 1280 KB Output is correct
8 Correct 1 ms 1280 KB Output is correct
9 Correct 1 ms 1280 KB Output is correct
10 Correct 1 ms 1280 KB Output is correct
11 Correct 1 ms 1280 KB Output is correct
12 Correct 1 ms 1280 KB Output is correct
13 Correct 1 ms 1280 KB Output is correct
14 Correct 1 ms 1280 KB Output is correct
15 Correct 1 ms 1408 KB Output is correct
16 Correct 1 ms 1280 KB Output is correct
17 Correct 1 ms 1280 KB Output is correct
18 Correct 1 ms 1280 KB Output is correct
19 Correct 1 ms 1280 KB Output is correct
20 Correct 1 ms 1280 KB Output is correct
21 Correct 1 ms 1280 KB Output is correct
22 Correct 1 ms 1280 KB Output is correct
23 Correct 1 ms 1280 KB Output is correct
24 Correct 1 ms 1280 KB Output is correct
25 Correct 1 ms 1280 KB Output is correct
26 Correct 1 ms 1280 KB Output is correct
27 Correct 1 ms 1280 KB Output is correct
28 Correct 1 ms 1280 KB Output is correct
29 Correct 1 ms 1280 KB Output is correct
30 Correct 1 ms 1280 KB Output is correct
31 Correct 1 ms 1280 KB Output is correct
32 Correct 1 ms 1280 KB Output is correct
33 Correct 1 ms 1280 KB Output is correct
# Verdict Execution time Memory Grader output
1 Incorrect 1 ms 1280 KB on inputs (80, 199), (81, 199), expected 1, but computed 0
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 1280 KB Output is correct
2 Correct 1 ms 1280 KB Output is correct
3 Correct 1 ms 1280 KB Output is correct
4 Correct 1 ms 1280 KB Output is correct
5 Correct 1 ms 1280 KB Output is correct
6 Correct 1 ms 1280 KB Output is correct
7 Correct 1 ms 1280 KB Output is correct
8 Correct 1 ms 1280 KB Output is correct
9 Correct 1 ms 1280 KB Output is correct
10 Correct 1 ms 1280 KB Output is correct
11 Correct 1 ms 1280 KB Output is correct
12 Correct 1 ms 1280 KB Output is correct
13 Correct 1 ms 1280 KB Output is correct
14 Correct 1 ms 1280 KB Output is correct
15 Correct 1 ms 1280 KB Output is correct
16 Correct 1 ms 1280 KB Output is correct
17 Correct 1 ms 1280 KB Output is correct
18 Correct 1 ms 1280 KB Output is correct
19 Correct 1 ms 1280 KB Output is correct
20 Correct 1 ms 1280 KB Output is correct
21 Correct 1 ms 1280 KB Output is correct
22 Correct 1 ms 1280 KB Output is correct
23 Correct 1 ms 1280 KB Output is correct
24 Correct 1 ms 1280 KB Output is correct
25 Correct 1 ms 1280 KB Output is correct
26 Correct 1 ms 1280 KB Output is correct
27 Correct 1 ms 1280 KB Output is correct
28 Correct 5 ms 1536 KB Output is correct
29 Correct 1 ms 1280 KB Output is correct
30 Correct 1 ms 1280 KB Output is correct
31 Correct 1 ms 1280 KB Output is correct
32 Correct 2 ms 1408 KB Output is correct
33 Correct 3 ms 1408 KB Output is correct
34 Correct 5 ms 1536 KB Output is correct
35 Correct 4 ms 1568 KB Output is correct
36 Correct 3 ms 1280 KB Output is correct
37 Correct 2 ms 1280 KB Output is correct
38 Incorrect 1 ms 1280 KB on inputs (8, 61), (22, 97), expected 1, but computed 0
39 Halted 0 ms 0 KB -