답안 #440522

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
440522 2021-07-02T11:18:37 Z Abrar_Al_Samit Birmingham (COCI20_birmingham) C++17
15 / 70
114 ms 8012 KB
#include<bits/stdc++.h>
#include <ext/pb_ds/assoc_container.hpp>
#include <ext/pb_ds/tree_policy.hpp>

using namespace std;
using namespace __gnu_pbds;


#define debug(x) cerr << '[' << (#x) << "] = " << x << '\n';

template<class T> using ordered_set = tree<T, null_type , less<T> , rb_tree_tag , tree_order_statistics_node_update> ;

const int maxn = 1e5 + 5;
vector<int>g[maxn];
void PlayGround() {
    int n, m, q, k; cin >> n >> m >> q >> k;

    queue<pair<pair<int,int>,int>>qq;
    vector<int>ans(n+1, -1);
    for(int i=0; i<q; ++i) {
        int x; cin >> x;
        qq.push(make_pair(make_pair(x, 0), 1));
        ans[x] = 0;
    }
    for(int i=0; i<m; ++i) {
        int u, v; cin >> u >> v;
        g[u].push_back(v);
        g[v].push_back(u);
    }

    while(!qq.empty()) {
        int node = qq.front().first.first;
        int dis = qq.front().first.second;
        int day = qq.front().second;
        qq.pop();
        ++dis;
        if(day * k < dis) {
            ++day;
            dis = 0;
        }
        for(int to : g[node]) {
            if(ans[to]==-1) {
                ans[to] = day;
                qq.push(make_pair(make_pair(to, dis), day));
            }
        }
    }
    for(int i=1; i<=n; ++i) cout << ans[i] << ' ';
    cout << '\n';
    #ifndef ONLINE_JUDGE
        cerr << "Time elapsed: " << 1.0 * clock() / CLOCKS_PER_SEC << " s.\n";
    #endif
} 
int main() {
    ios_base::sync_with_stdio(0);
    cin.tie(0);
    cout.tie(0);
    // #ifndef ONLINE_JUDGE
    //     freopen("input.txt", "r", stdin);
    // #endif
    PlayGround();

    return 0;
}
# 결과 실행 시간 메모리 Grader output
1 Incorrect 2 ms 2636 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 2 ms 2636 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 2 ms 2636 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 2 ms 2636 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 2 ms 2636 KB Output is correct
2 Correct 2 ms 2636 KB Output is correct
3 Correct 2 ms 2636 KB Output is correct
4 Correct 2 ms 2636 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 2 ms 2636 KB Output is correct
2 Correct 2 ms 2636 KB Output is correct
3 Correct 2 ms 2636 KB Output is correct
4 Correct 2 ms 2636 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 2 ms 2636 KB Output is correct
2 Correct 2 ms 2636 KB Output is correct
3 Correct 2 ms 2636 KB Output is correct
4 Correct 2 ms 2636 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 101 ms 7720 KB Output is correct
2 Incorrect 93 ms 7984 KB Output isn't correct
3 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 94 ms 8004 KB Output is correct
2 Incorrect 98 ms 7928 KB Output isn't correct
3 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 114 ms 7700 KB Output is correct
2 Incorrect 102 ms 8012 KB Output isn't correct
3 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 78 ms 7512 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 95 ms 7464 KB Output is correct
2 Incorrect 89 ms 7700 KB Output isn't correct
3 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 80 ms 7496 KB Output is correct
2 Incorrect 106 ms 7720 KB Output isn't correct
3 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 89 ms 7616 KB Output is correct
2 Incorrect 87 ms 7408 KB Output isn't correct
3 Halted 0 ms 0 KB -