Submission #945819

# Submission time Handle Problem Language Result Execution time Memory
945819 2024-03-14T07:56:31 Z vjudge1 Building Skyscrapers (CEOI19_skyscrapers) C++17
54 / 100
301 ms 54172 KB
#include <bits/stdc++.h>

using namespace std;

#define all(x) x.begin(), x.end()
#define ar array
#define pb push_back
#define ln '\n'
#define int long long

using i64 = long long;

template <class F, class _S>
bool chmin(F &u, const _S &v){
    bool flag = false;
    if ( u > v ){
        u = v; flag |= true;
    }
    return flag;
}

template <class F, class _S>
bool chmax(F &u, const _S &v){
    bool flag = false;
    if ( u < v ){
        u = v; flag |= true;
    }
    return flag;
}

int dx[] = {0, 0, 1, 1, 1, -1, -1, -1};
int dy[] = {1, -1, 1, 0, -1, 1, 0, -1};

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

    int n, t; cin >> n >> t;
    map <int,map<int,int>> mp;
    set <ar<int,3>> st;
    for ( int i = 0; i < n; i++ ){
        int x, y; cin >> x >> y;
        if ( !i ) st.insert({x, y, i});
        else mp[x][y] = i;
    }
    vector <int> ans;
    while ( !st.empty() ){
        auto [u, v, j] = *st.begin();
        st.erase(st.begin());
        ans.pb(j);
        for ( int i = 0; i < 8; i++ ){
            int x = dx[i] + u, y = dy[i] + v;
            if ( mp[x][y] ){
                st.insert({x, y, mp[x][y]});
                mp[x][y] = 0;
            }
        }
    }
    if ( ans.size() != n ){
        cout << "NO\n";
        return 0;
    }
    cout << "YES\n";
    for ( auto &u: ans ){
        cout << u + 1 << ln;
    }

    cout << '\n';
}

Compilation message

skyscrapers.cpp: In function 'int main()':
skyscrapers.cpp:59:21: warning: comparison of integer expressions of different signedness: 'std::vector<long long int>::size_type' {aka 'long unsigned int'} and 'long long int' [-Wsign-compare]
   59 |     if ( ans.size() != n ){
      |          ~~~~~~~~~~~^~~~
# Verdict Execution time Memory Grader output
1 Correct 0 ms 348 KB ans=YES N=1
2 Correct 0 ms 348 KB ans=YES N=4
3 Correct 0 ms 348 KB ans=NO N=4
4 Correct 0 ms 348 KB ans=YES N=5
5 Correct 1 ms 348 KB ans=YES N=9
6 Correct 1 ms 344 KB ans=YES N=5
7 Correct 0 ms 348 KB ans=NO N=9
8 Correct 0 ms 348 KB ans=NO N=10
9 Correct 0 ms 348 KB ans=YES N=10
10 Correct 0 ms 348 KB ans=YES N=10
11 Correct 1 ms 348 KB ans=YES N=10
12 Correct 0 ms 344 KB ans=YES N=9
13 Correct 1 ms 348 KB ans=YES N=9
14 Correct 0 ms 348 KB ans=YES N=8
15 Correct 0 ms 348 KB ans=YES N=8
16 Correct 0 ms 344 KB ans=NO N=2
# Verdict Execution time Memory Grader output
1 Correct 0 ms 348 KB ans=YES N=1
2 Correct 0 ms 348 KB ans=YES N=4
3 Correct 0 ms 348 KB ans=NO N=4
4 Correct 0 ms 348 KB ans=YES N=5
5 Correct 1 ms 348 KB ans=YES N=9
6 Correct 1 ms 344 KB ans=YES N=5
7 Correct 0 ms 348 KB ans=NO N=9
8 Correct 0 ms 348 KB ans=NO N=10
9 Correct 0 ms 348 KB ans=YES N=10
10 Correct 0 ms 348 KB ans=YES N=10
11 Correct 1 ms 348 KB ans=YES N=10
12 Correct 0 ms 344 KB ans=YES N=9
13 Correct 1 ms 348 KB ans=YES N=9
14 Correct 0 ms 348 KB ans=YES N=8
15 Correct 0 ms 348 KB ans=YES N=8
16 Correct 0 ms 344 KB ans=NO N=2
17 Correct 1 ms 360 KB ans=YES N=17
18 Correct 0 ms 360 KB ans=YES N=25
19 Correct 1 ms 360 KB ans=YES N=100
20 Correct 1 ms 360 KB ans=YES N=185
21 Correct 0 ms 356 KB ans=NO N=174
22 Correct 1 ms 360 KB ans=YES N=90
23 Correct 0 ms 348 KB ans=YES N=63
24 Correct 1 ms 352 KB ans=YES N=87
25 Correct 0 ms 356 KB ans=YES N=183
26 Correct 1 ms 348 KB ans=YES N=188
27 Correct 1 ms 348 KB ans=YES N=183
28 Correct 1 ms 460 KB ans=YES N=189
29 Correct 1 ms 348 KB ans=YES N=200
30 Correct 1 ms 348 KB ans=YES N=190
31 Correct 1 ms 356 KB ans=YES N=187
32 Correct 1 ms 604 KB ans=YES N=187
33 Correct 1 ms 352 KB ans=YES N=182
34 Correct 1 ms 600 KB ans=YES N=184
35 Correct 1 ms 348 KB ans=YES N=188
36 Correct 0 ms 348 KB ans=YES N=181
37 Correct 1 ms 356 KB ans=YES N=188
38 Correct 1 ms 348 KB ans=YES N=191
39 Correct 1 ms 348 KB ans=YES N=196
40 Correct 1 ms 352 KB ans=YES N=196
41 Correct 1 ms 352 KB ans=YES N=196
42 Correct 1 ms 356 KB ans=YES N=196
43 Correct 1 ms 360 KB ans=YES N=195
# Verdict Execution time Memory Grader output
1 Correct 0 ms 348 KB ans=YES N=1
2 Correct 0 ms 348 KB ans=YES N=4
3 Correct 0 ms 348 KB ans=NO N=4
4 Correct 0 ms 348 KB ans=YES N=5
5 Correct 1 ms 348 KB ans=YES N=9
6 Correct 1 ms 344 KB ans=YES N=5
7 Correct 0 ms 348 KB ans=NO N=9
8 Correct 0 ms 348 KB ans=NO N=10
9 Correct 0 ms 348 KB ans=YES N=10
10 Correct 0 ms 348 KB ans=YES N=10
11 Correct 1 ms 348 KB ans=YES N=10
12 Correct 0 ms 344 KB ans=YES N=9
13 Correct 1 ms 348 KB ans=YES N=9
14 Correct 0 ms 348 KB ans=YES N=8
15 Correct 0 ms 348 KB ans=YES N=8
16 Correct 0 ms 344 KB ans=NO N=2
17 Correct 1 ms 360 KB ans=YES N=17
18 Correct 0 ms 360 KB ans=YES N=25
19 Correct 1 ms 360 KB ans=YES N=100
20 Correct 1 ms 360 KB ans=YES N=185
21 Correct 0 ms 356 KB ans=NO N=174
22 Correct 1 ms 360 KB ans=YES N=90
23 Correct 0 ms 348 KB ans=YES N=63
24 Correct 1 ms 352 KB ans=YES N=87
25 Correct 0 ms 356 KB ans=YES N=183
26 Correct 1 ms 348 KB ans=YES N=188
27 Correct 1 ms 348 KB ans=YES N=183
28 Correct 1 ms 460 KB ans=YES N=189
29 Correct 1 ms 348 KB ans=YES N=200
30 Correct 1 ms 348 KB ans=YES N=190
31 Correct 1 ms 356 KB ans=YES N=187
32 Correct 1 ms 604 KB ans=YES N=187
33 Correct 1 ms 352 KB ans=YES N=182
34 Correct 1 ms 600 KB ans=YES N=184
35 Correct 1 ms 348 KB ans=YES N=188
36 Correct 0 ms 348 KB ans=YES N=181
37 Correct 1 ms 356 KB ans=YES N=188
38 Correct 1 ms 348 KB ans=YES N=191
39 Correct 1 ms 348 KB ans=YES N=196
40 Correct 1 ms 352 KB ans=YES N=196
41 Correct 1 ms 352 KB ans=YES N=196
42 Correct 1 ms 356 KB ans=YES N=196
43 Correct 1 ms 360 KB ans=YES N=195
44 Correct 2 ms 612 KB ans=NO N=1934
45 Correct 1 ms 608 KB ans=NO N=1965
46 Correct 2 ms 608 KB ans=YES N=1824
47 Correct 2 ms 476 KB ans=YES N=1981
48 Correct 2 ms 608 KB ans=YES N=1814
49 Correct 2 ms 604 KB ans=YES N=1854
50 Correct 2 ms 464 KB ans=YES N=1831
51 Correct 3 ms 604 KB ans=YES N=2000
52 Correct 3 ms 600 KB ans=YES N=1847
53 Correct 2 ms 604 KB ans=YES N=1819
54 Correct 2 ms 604 KB ans=YES N=1986
55 Correct 3 ms 860 KB ans=YES N=2000
56 Correct 3 ms 860 KB ans=YES N=1834
57 Correct 3 ms 860 KB ans=YES N=1860
58 Correct 3 ms 860 KB ans=YES N=1898
59 Correct 3 ms 604 KB ans=YES N=1832
60 Correct 3 ms 820 KB ans=YES N=1929
61 Correct 4 ms 604 KB ans=YES N=1919
62 Correct 2 ms 860 KB ans=YES N=1882
63 Correct 3 ms 856 KB ans=YES N=1922
64 Correct 2 ms 604 KB ans=YES N=1989
65 Correct 2 ms 600 KB ans=YES N=1978
66 Correct 3 ms 860 KB ans=YES N=1867
67 Correct 3 ms 856 KB ans=YES N=1942
# Verdict Execution time Memory Grader output
1 Correct 2 ms 600 KB ans=NO N=1934
2 Correct 1 ms 604 KB ans=NO N=1965
3 Incorrect 2 ms 604 KB Contestant's solution is not lexicographically largest at index 1824 (1813 vs 1702)
4 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 0 ms 348 KB ans=YES N=1
2 Correct 0 ms 348 KB ans=YES N=4
3 Correct 0 ms 348 KB ans=NO N=4
4 Correct 0 ms 348 KB ans=YES N=5
5 Correct 1 ms 348 KB ans=YES N=9
6 Correct 1 ms 344 KB ans=YES N=5
7 Correct 0 ms 348 KB ans=NO N=9
8 Correct 0 ms 348 KB ans=NO N=10
9 Correct 0 ms 348 KB ans=YES N=10
10 Correct 0 ms 348 KB ans=YES N=10
11 Correct 1 ms 348 KB ans=YES N=10
12 Correct 0 ms 344 KB ans=YES N=9
13 Correct 1 ms 348 KB ans=YES N=9
14 Correct 0 ms 348 KB ans=YES N=8
15 Correct 0 ms 348 KB ans=YES N=8
16 Correct 0 ms 344 KB ans=NO N=2
17 Correct 1 ms 360 KB ans=YES N=17
18 Correct 0 ms 360 KB ans=YES N=25
19 Correct 1 ms 360 KB ans=YES N=100
20 Correct 1 ms 360 KB ans=YES N=185
21 Correct 0 ms 356 KB ans=NO N=174
22 Correct 1 ms 360 KB ans=YES N=90
23 Correct 0 ms 348 KB ans=YES N=63
24 Correct 1 ms 352 KB ans=YES N=87
25 Correct 0 ms 356 KB ans=YES N=183
26 Correct 1 ms 348 KB ans=YES N=188
27 Correct 1 ms 348 KB ans=YES N=183
28 Correct 1 ms 460 KB ans=YES N=189
29 Correct 1 ms 348 KB ans=YES N=200
30 Correct 1 ms 348 KB ans=YES N=190
31 Correct 1 ms 356 KB ans=YES N=187
32 Correct 1 ms 604 KB ans=YES N=187
33 Correct 1 ms 352 KB ans=YES N=182
34 Correct 1 ms 600 KB ans=YES N=184
35 Correct 1 ms 348 KB ans=YES N=188
36 Correct 0 ms 348 KB ans=YES N=181
37 Correct 1 ms 356 KB ans=YES N=188
38 Correct 1 ms 348 KB ans=YES N=191
39 Correct 1 ms 348 KB ans=YES N=196
40 Correct 1 ms 352 KB ans=YES N=196
41 Correct 1 ms 352 KB ans=YES N=196
42 Correct 1 ms 356 KB ans=YES N=196
43 Correct 1 ms 360 KB ans=YES N=195
44 Correct 2 ms 612 KB ans=NO N=1934
45 Correct 1 ms 608 KB ans=NO N=1965
46 Correct 2 ms 608 KB ans=YES N=1824
47 Correct 2 ms 476 KB ans=YES N=1981
48 Correct 2 ms 608 KB ans=YES N=1814
49 Correct 2 ms 604 KB ans=YES N=1854
50 Correct 2 ms 464 KB ans=YES N=1831
51 Correct 3 ms 604 KB ans=YES N=2000
52 Correct 3 ms 600 KB ans=YES N=1847
53 Correct 2 ms 604 KB ans=YES N=1819
54 Correct 2 ms 604 KB ans=YES N=1986
55 Correct 3 ms 860 KB ans=YES N=2000
56 Correct 3 ms 860 KB ans=YES N=1834
57 Correct 3 ms 860 KB ans=YES N=1860
58 Correct 3 ms 860 KB ans=YES N=1898
59 Correct 3 ms 604 KB ans=YES N=1832
60 Correct 3 ms 820 KB ans=YES N=1929
61 Correct 4 ms 604 KB ans=YES N=1919
62 Correct 2 ms 860 KB ans=YES N=1882
63 Correct 3 ms 856 KB ans=YES N=1922
64 Correct 2 ms 604 KB ans=YES N=1989
65 Correct 2 ms 600 KB ans=YES N=1978
66 Correct 3 ms 860 KB ans=YES N=1867
67 Correct 3 ms 856 KB ans=YES N=1942
68 Correct 71 ms 8356 KB ans=NO N=66151
69 Correct 33 ms 4956 KB ans=NO N=64333
70 Correct 71 ms 6532 KB ans=YES N=69316
71 Correct 79 ms 6340 KB ans=YES N=66695
72 Correct 98 ms 6564 KB ans=YES N=68436
73 Correct 107 ms 6668 KB ans=YES N=70000
74 Correct 82 ms 6672 KB ans=YES N=68501
75 Correct 74 ms 6964 KB ans=YES N=70000
76 Correct 96 ms 7260 KB ans=YES N=65009
77 Correct 85 ms 11480 KB ans=YES N=67007
78 Correct 95 ms 13640 KB ans=YES N=66357
79 Correct 111 ms 15288 KB ans=YES N=65430
80 Correct 101 ms 14664 KB ans=YES N=65790
81 Correct 92 ms 13520 KB ans=YES N=66020
82 Correct 86 ms 12424 KB ans=YES N=65809
83 Correct 75 ms 8648 KB ans=YES N=65651
84 Correct 104 ms 18816 KB ans=YES N=68040
85 Correct 94 ms 16724 KB ans=YES N=66570
86 Correct 69 ms 6736 KB ans=YES N=65421
87 Correct 94 ms 7584 KB ans=YES N=68351
88 Correct 81 ms 6348 KB ans=YES N=67027
89 Correct 69 ms 10728 KB ans=YES N=68879
90 Correct 78 ms 7808 KB ans=YES N=67256
91 Correct 189 ms 13764 KB ans=YES N=148315
92 Correct 60 ms 10604 KB ans=NO N=142745
93 Correct 137 ms 26452 KB ans=NO N=148443
94 Correct 180 ms 14864 KB ans=YES N=148328
95 Correct 193 ms 15092 KB ans=YES N=147855
96 Correct 202 ms 15288 KB ans=YES N=150000
97 Correct 195 ms 14788 KB ans=YES N=144725
98 Correct 204 ms 15188 KB ans=YES N=149445
99 Correct 178 ms 15048 KB ans=YES N=144455
100 Correct 173 ms 14764 KB ans=YES N=143487
101 Correct 180 ms 15256 KB ans=YES N=149688
102 Correct 221 ms 26924 KB ans=YES N=141481
103 Correct 270 ms 39356 KB ans=YES N=147430
104 Correct 223 ms 21540 KB ans=YES N=142247
105 Correct 230 ms 26080 KB ans=YES N=149941
106 Correct 301 ms 37936 KB ans=YES N=141635
107 Correct 247 ms 32672 KB ans=YES N=142896
108 Correct 254 ms 36232 KB ans=YES N=142069
109 Correct 191 ms 17000 KB ans=YES N=142378
110 Correct 215 ms 30144 KB ans=YES N=150000
111 Correct 253 ms 43048 KB ans=YES N=141452
112 Correct 276 ms 43456 KB ans=YES N=134453
113 Correct 292 ms 54172 KB ans=YES N=144172
# Verdict Execution time Memory Grader output
1 Correct 73 ms 8292 KB ans=NO N=66151
2 Correct 23 ms 4956 KB ans=NO N=64333
3 Incorrect 73 ms 6444 KB Contestant's solution is not lexicographically largest at index 69316 (69235 vs 7320)
4 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 2 ms 600 KB ans=NO N=1934
2 Correct 1 ms 604 KB ans=NO N=1965
3 Incorrect 2 ms 604 KB Contestant's solution is not lexicographically largest at index 1824 (1813 vs 1702)
4 Halted 0 ms 0 KB -