Submission #261024

# Submission time Handle Problem Language Result Execution time Memory
261024 2020-08-11T10:04:58 Z JoMee Building Skyscrapers (CEOI19_skyscrapers) C++17
54 / 100
526 ms 23560 KB
#include <bits/stdc++.h>

using namespace std;

#define int long long
#define rep(i,a,n) for(int i = a; i<n; i++)
#define per(i,a,n) for(int i = n-1; i>=a; i--)

map<pair<int,int>,bool> vis;
map<pair<int,int>,int> idx;
int n,t;

int max(int a,int b){return (a>b)?a:b;}
int min(int a,int b){return (a<b)?a:b;}


signed main(){
    ios_base::sync_with_stdio(false);
    cin.tie(0);

    cin>>n>>t;
    bool f = false;
    pair<int,int> start = make_pair(-1,-1);
    rep(i,0,n){
        int x,y;
        cin>>x>>y;
        idx[make_pair(x,y)] = i+1;
        vis[make_pair(x,y)] = false;
        if(!f || x > start.first)start = make_pair(x,y),f = true;
    }

    priority_queue<pair<int,int> > pq;
    vector<pair<int,int> > res;
    pq.push(start);
    vis[start] = true;
    while(!pq.empty()){
        pair<int,int> node = pq.top();
        pq.pop();
        res.push_back(node);
        rep(i,-1,2){
         rep(j,-1,2){
            if(i==0&&j==0)continue;
            pair<int,int> e = node;
            e.first += i;
            e.second += j;
            if(vis.find(e) != vis.end() && !vis[e]){
                vis[e] = true;
                pq.push(e);
            }
        }   
        }

    }
    bool works = true;
    for(auto i:vis){
        works &= i.second;
    }
    if(works){
        cout<<"YES\n";
        for(auto i:res){
            cout<<idx[i]<<" ";
        }
        cout<<"\n";
    }else{
        cout<<"NO\n";
    }


}
# Verdict Execution time Memory Grader output
1 Correct 1 ms 384 KB ans=YES N=1
2 Correct 0 ms 384 KB ans=YES N=4
3 Correct 0 ms 384 KB ans=NO N=4
4 Correct 1 ms 384 KB ans=YES N=5
5 Correct 0 ms 384 KB ans=YES N=9
6 Correct 1 ms 384 KB ans=YES N=5
7 Correct 0 ms 384 KB ans=NO N=9
8 Correct 1 ms 384 KB ans=NO N=10
9 Correct 0 ms 384 KB ans=YES N=10
10 Correct 1 ms 384 KB ans=YES N=10
11 Correct 1 ms 384 KB ans=YES N=10
12 Correct 1 ms 360 KB ans=YES N=9
13 Correct 1 ms 384 KB ans=YES N=9
14 Correct 1 ms 384 KB ans=YES N=8
15 Correct 1 ms 384 KB ans=YES N=8
16 Correct 1 ms 384 KB ans=NO N=2
# Verdict Execution time Memory Grader output
1 Correct 1 ms 384 KB ans=YES N=1
2 Correct 0 ms 384 KB ans=YES N=4
3 Correct 0 ms 384 KB ans=NO N=4
4 Correct 1 ms 384 KB ans=YES N=5
5 Correct 0 ms 384 KB ans=YES N=9
6 Correct 1 ms 384 KB ans=YES N=5
7 Correct 0 ms 384 KB ans=NO N=9
8 Correct 1 ms 384 KB ans=NO N=10
9 Correct 0 ms 384 KB ans=YES N=10
10 Correct 1 ms 384 KB ans=YES N=10
11 Correct 1 ms 384 KB ans=YES N=10
12 Correct 1 ms 360 KB ans=YES N=9
13 Correct 1 ms 384 KB ans=YES N=9
14 Correct 1 ms 384 KB ans=YES N=8
15 Correct 1 ms 384 KB ans=YES N=8
16 Correct 1 ms 384 KB ans=NO N=2
17 Correct 1 ms 384 KB ans=YES N=17
18 Correct 1 ms 384 KB ans=YES N=25
19 Correct 1 ms 384 KB ans=YES N=100
20 Correct 1 ms 384 KB ans=YES N=185
21 Correct 1 ms 384 KB ans=NO N=174
22 Correct 1 ms 384 KB ans=YES N=90
23 Correct 1 ms 384 KB ans=YES N=63
24 Correct 1 ms 384 KB ans=YES N=87
25 Correct 1 ms 384 KB ans=YES N=183
26 Correct 1 ms 384 KB ans=YES N=188
27 Correct 1 ms 384 KB ans=YES N=183
28 Correct 1 ms 384 KB ans=YES N=189
29 Correct 1 ms 384 KB ans=YES N=200
30 Correct 1 ms 384 KB ans=YES N=190
31 Correct 1 ms 384 KB ans=YES N=187
32 Correct 1 ms 384 KB ans=YES N=187
33 Correct 1 ms 384 KB ans=YES N=182
34 Correct 1 ms 384 KB ans=YES N=184
35 Correct 1 ms 384 KB ans=YES N=188
36 Correct 1 ms 384 KB ans=YES N=181
37 Correct 1 ms 384 KB ans=YES N=188
38 Correct 1 ms 380 KB ans=YES N=191
39 Correct 1 ms 384 KB ans=YES N=196
40 Correct 1 ms 384 KB ans=YES N=196
41 Correct 1 ms 384 KB ans=YES N=196
42 Correct 1 ms 384 KB ans=YES N=196
43 Correct 1 ms 384 KB ans=YES N=195
# Verdict Execution time Memory Grader output
1 Correct 1 ms 384 KB ans=YES N=1
2 Correct 0 ms 384 KB ans=YES N=4
3 Correct 0 ms 384 KB ans=NO N=4
4 Correct 1 ms 384 KB ans=YES N=5
5 Correct 0 ms 384 KB ans=YES N=9
6 Correct 1 ms 384 KB ans=YES N=5
7 Correct 0 ms 384 KB ans=NO N=9
8 Correct 1 ms 384 KB ans=NO N=10
9 Correct 0 ms 384 KB ans=YES N=10
10 Correct 1 ms 384 KB ans=YES N=10
11 Correct 1 ms 384 KB ans=YES N=10
12 Correct 1 ms 360 KB ans=YES N=9
13 Correct 1 ms 384 KB ans=YES N=9
14 Correct 1 ms 384 KB ans=YES N=8
15 Correct 1 ms 384 KB ans=YES N=8
16 Correct 1 ms 384 KB ans=NO N=2
17 Correct 1 ms 384 KB ans=YES N=17
18 Correct 1 ms 384 KB ans=YES N=25
19 Correct 1 ms 384 KB ans=YES N=100
20 Correct 1 ms 384 KB ans=YES N=185
21 Correct 1 ms 384 KB ans=NO N=174
22 Correct 1 ms 384 KB ans=YES N=90
23 Correct 1 ms 384 KB ans=YES N=63
24 Correct 1 ms 384 KB ans=YES N=87
25 Correct 1 ms 384 KB ans=YES N=183
26 Correct 1 ms 384 KB ans=YES N=188
27 Correct 1 ms 384 KB ans=YES N=183
28 Correct 1 ms 384 KB ans=YES N=189
29 Correct 1 ms 384 KB ans=YES N=200
30 Correct 1 ms 384 KB ans=YES N=190
31 Correct 1 ms 384 KB ans=YES N=187
32 Correct 1 ms 384 KB ans=YES N=187
33 Correct 1 ms 384 KB ans=YES N=182
34 Correct 1 ms 384 KB ans=YES N=184
35 Correct 1 ms 384 KB ans=YES N=188
36 Correct 1 ms 384 KB ans=YES N=181
37 Correct 1 ms 384 KB ans=YES N=188
38 Correct 1 ms 380 KB ans=YES N=191
39 Correct 1 ms 384 KB ans=YES N=196
40 Correct 1 ms 384 KB ans=YES N=196
41 Correct 1 ms 384 KB ans=YES N=196
42 Correct 1 ms 384 KB ans=YES N=196
43 Correct 1 ms 384 KB ans=YES N=195
44 Correct 2 ms 640 KB ans=NO N=1934
45 Correct 2 ms 640 KB ans=NO N=1965
46 Correct 4 ms 640 KB ans=YES N=1824
47 Correct 5 ms 640 KB ans=YES N=1981
48 Correct 4 ms 640 KB ans=YES N=1814
49 Correct 4 ms 640 KB ans=YES N=1854
50 Correct 5 ms 640 KB ans=YES N=1831
51 Correct 5 ms 640 KB ans=YES N=2000
52 Correct 4 ms 640 KB ans=YES N=1847
53 Correct 4 ms 664 KB ans=YES N=1819
54 Correct 6 ms 640 KB ans=YES N=1986
55 Correct 4 ms 768 KB ans=YES N=2000
56 Correct 6 ms 640 KB ans=YES N=1834
57 Correct 4 ms 640 KB ans=YES N=1860
58 Correct 7 ms 640 KB ans=YES N=1898
59 Correct 4 ms 640 KB ans=YES N=1832
60 Correct 5 ms 640 KB ans=YES N=1929
61 Correct 6 ms 640 KB ans=YES N=1919
62 Correct 5 ms 640 KB ans=YES N=1882
63 Correct 4 ms 640 KB ans=YES N=1922
64 Correct 4 ms 640 KB ans=YES N=1989
65 Correct 3 ms 640 KB ans=YES N=1978
66 Correct 5 ms 640 KB ans=YES N=1867
67 Correct 4 ms 640 KB ans=YES N=1942
# Verdict Execution time Memory Grader output
1 Correct 2 ms 640 KB ans=NO N=1934
2 Correct 2 ms 640 KB ans=NO N=1965
3 Incorrect 4 ms 640 KB Contestant's solution is not lexicographically largest at index 1824 (1813 vs 974)
4 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 384 KB ans=YES N=1
2 Correct 0 ms 384 KB ans=YES N=4
3 Correct 0 ms 384 KB ans=NO N=4
4 Correct 1 ms 384 KB ans=YES N=5
5 Correct 0 ms 384 KB ans=YES N=9
6 Correct 1 ms 384 KB ans=YES N=5
7 Correct 0 ms 384 KB ans=NO N=9
8 Correct 1 ms 384 KB ans=NO N=10
9 Correct 0 ms 384 KB ans=YES N=10
10 Correct 1 ms 384 KB ans=YES N=10
11 Correct 1 ms 384 KB ans=YES N=10
12 Correct 1 ms 360 KB ans=YES N=9
13 Correct 1 ms 384 KB ans=YES N=9
14 Correct 1 ms 384 KB ans=YES N=8
15 Correct 1 ms 384 KB ans=YES N=8
16 Correct 1 ms 384 KB ans=NO N=2
17 Correct 1 ms 384 KB ans=YES N=17
18 Correct 1 ms 384 KB ans=YES N=25
19 Correct 1 ms 384 KB ans=YES N=100
20 Correct 1 ms 384 KB ans=YES N=185
21 Correct 1 ms 384 KB ans=NO N=174
22 Correct 1 ms 384 KB ans=YES N=90
23 Correct 1 ms 384 KB ans=YES N=63
24 Correct 1 ms 384 KB ans=YES N=87
25 Correct 1 ms 384 KB ans=YES N=183
26 Correct 1 ms 384 KB ans=YES N=188
27 Correct 1 ms 384 KB ans=YES N=183
28 Correct 1 ms 384 KB ans=YES N=189
29 Correct 1 ms 384 KB ans=YES N=200
30 Correct 1 ms 384 KB ans=YES N=190
31 Correct 1 ms 384 KB ans=YES N=187
32 Correct 1 ms 384 KB ans=YES N=187
33 Correct 1 ms 384 KB ans=YES N=182
34 Correct 1 ms 384 KB ans=YES N=184
35 Correct 1 ms 384 KB ans=YES N=188
36 Correct 1 ms 384 KB ans=YES N=181
37 Correct 1 ms 384 KB ans=YES N=188
38 Correct 1 ms 380 KB ans=YES N=191
39 Correct 1 ms 384 KB ans=YES N=196
40 Correct 1 ms 384 KB ans=YES N=196
41 Correct 1 ms 384 KB ans=YES N=196
42 Correct 1 ms 384 KB ans=YES N=196
43 Correct 1 ms 384 KB ans=YES N=195
44 Correct 2 ms 640 KB ans=NO N=1934
45 Correct 2 ms 640 KB ans=NO N=1965
46 Correct 4 ms 640 KB ans=YES N=1824
47 Correct 5 ms 640 KB ans=YES N=1981
48 Correct 4 ms 640 KB ans=YES N=1814
49 Correct 4 ms 640 KB ans=YES N=1854
50 Correct 5 ms 640 KB ans=YES N=1831
51 Correct 5 ms 640 KB ans=YES N=2000
52 Correct 4 ms 640 KB ans=YES N=1847
53 Correct 4 ms 664 KB ans=YES N=1819
54 Correct 6 ms 640 KB ans=YES N=1986
55 Correct 4 ms 768 KB ans=YES N=2000
56 Correct 6 ms 640 KB ans=YES N=1834
57 Correct 4 ms 640 KB ans=YES N=1860
58 Correct 7 ms 640 KB ans=YES N=1898
59 Correct 4 ms 640 KB ans=YES N=1832
60 Correct 5 ms 640 KB ans=YES N=1929
61 Correct 6 ms 640 KB ans=YES N=1919
62 Correct 5 ms 640 KB ans=YES N=1882
63 Correct 4 ms 640 KB ans=YES N=1922
64 Correct 4 ms 640 KB ans=YES N=1989
65 Correct 3 ms 640 KB ans=YES N=1978
66 Correct 5 ms 640 KB ans=YES N=1867
67 Correct 4 ms 640 KB ans=YES N=1942
68 Correct 198 ms 10860 KB ans=NO N=66151
69 Correct 89 ms 8528 KB ans=NO N=64333
70 Correct 210 ms 11336 KB ans=YES N=69316
71 Correct 197 ms 11000 KB ans=YES N=66695
72 Correct 204 ms 11256 KB ans=YES N=68436
73 Correct 197 ms 11372 KB ans=YES N=70000
74 Correct 218 ms 11252 KB ans=YES N=68501
75 Correct 214 ms 11496 KB ans=YES N=70000
76 Correct 176 ms 10092 KB ans=YES N=65009
77 Correct 175 ms 10988 KB ans=YES N=67007
78 Correct 185 ms 11008 KB ans=YES N=66357
79 Correct 183 ms 10232 KB ans=YES N=65430
80 Correct 168 ms 11036 KB ans=YES N=65790
81 Correct 177 ms 10856 KB ans=YES N=66020
82 Correct 165 ms 10984 KB ans=YES N=65809
83 Correct 174 ms 10868 KB ans=YES N=65651
84 Correct 173 ms 11112 KB ans=YES N=68040
85 Correct 180 ms 10992 KB ans=YES N=66570
86 Correct 184 ms 10228 KB ans=YES N=65421
87 Correct 187 ms 11112 KB ans=YES N=68351
88 Correct 204 ms 11064 KB ans=YES N=67027
89 Correct 162 ms 11276 KB ans=YES N=68879
90 Correct 185 ms 11144 KB ans=YES N=67256
91 Correct 463 ms 23444 KB ans=YES N=148315
92 Correct 206 ms 18396 KB ans=NO N=142745
93 Correct 231 ms 19064 KB ans=NO N=148443
94 Correct 488 ms 23396 KB ans=YES N=148328
95 Correct 485 ms 23412 KB ans=YES N=147855
96 Correct 526 ms 23540 KB ans=YES N=150000
97 Correct 465 ms 23036 KB ans=YES N=144725
98 Correct 518 ms 23400 KB ans=YES N=149445
99 Correct 506 ms 22816 KB ans=YES N=144455
100 Correct 482 ms 22696 KB ans=YES N=143487
101 Correct 519 ms 23396 KB ans=YES N=149688
102 Correct 436 ms 22472 KB ans=YES N=141481
103 Correct 430 ms 23172 KB ans=YES N=147430
104 Correct 446 ms 22496 KB ans=YES N=142247
105 Correct 485 ms 23560 KB ans=YES N=149941
106 Correct 421 ms 22372 KB ans=YES N=141635
107 Correct 467 ms 22628 KB ans=YES N=142896
108 Correct 433 ms 22424 KB ans=YES N=142069
109 Correct 438 ms 22508 KB ans=YES N=142378
110 Correct 457 ms 23532 KB ans=YES N=150000
111 Correct 438 ms 22504 KB ans=YES N=141452
112 Correct 362 ms 21476 KB ans=YES N=134453
113 Correct 381 ms 22756 KB ans=YES N=144172
# Verdict Execution time Memory Grader output
1 Correct 173 ms 10860 KB ans=NO N=66151
2 Correct 83 ms 8568 KB ans=NO N=64333
3 Incorrect 201 ms 11368 KB Contestant's solution is not lexicographically largest at index 69316 (69235 vs 51180)
4 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 2 ms 640 KB ans=NO N=1934
2 Correct 2 ms 640 KB ans=NO N=1965
3 Incorrect 4 ms 640 KB Contestant's solution is not lexicographically largest at index 1824 (1813 vs 974)
4 Halted 0 ms 0 KB -