Submission #67572248
Source Code Expand
#include <iostream>
#include <vector>
#include <queue>
#include <algorithm>
#include <cstring>
#define pii pair<int, int>
#define F first
#define S second
#define pb push_back
using namespace std;
inline int read();
void write(int);
void writeln(int);
int T;
struct D {
int N, K;
vector<pii > E;
};
int main() {
T = read();
vector<D> Qt(T);
for(int i = 0; i < T; i++) {
Qt[i].N = read(), Qt[i].K = read();;
for(int j = 0; j < Qt[i].N - 1; j++) {
int u = read(), v = read();
Qt[i].E.pb({u, v});
}
}
for(int idx = 0; idx < T; idx++) {
int N = Qt[idx].N, K = Qt[idx].K;
vector<vector<int> > adj(N + 1);
for(auto &eg : Qt[idx].E) {
int u = eg.F, v = eg.S;
adj[u].pb(v), adj[v].pb(u);
}
vector<int> ops(N + 1, -1);
if(K == 0) for(int i = 1; i <= N; i++) ops[i] = 0;
else {
vector<bool> inl(N + 1, 0);
vector<int> dis(N + 1, -1);
queue<int> q;
ops[1] = 0;
if(K > 0) q.push(1);
while(!q.empty()) {
int sz = q.size();
vector<int> nlv;
for(int i = 0; i < sz; i++) {
int u = q.front();
q.pop();
vector<int> vis;
queue<int> Q;
dis[u] = 0, vis.pb(u), Q.push(u);
while(!Q.empty()) {
int v = Q.front();
Q.pop();
int d = dis[v];
if(d == K) {
if(ops[v] == -1 && !inl[v]) {
ops[v] = ops[u] + 1;
inl[v] = true;
nlv.pb(v);
}
}
else {
for(int w : adj[v]) {
if(dis[w] == -1) {
dis[w] = d + 1;
Q.push(w);
vis.pb(w);
}
}
}
}
for(int vv : vis) dis[vv] = -1;
}
for(int v : nlv) q.push(v), inl[v] = 0;
}
}
for(int i = 2; i <= N; i++) write(ops[i]), putchar(' ');
putchar('\n');
}
return 0;
}
inline int read() {
int res = 0, f = 1;
char ch = getchar();
while( !(ch >= '0' && ch <= '9') ) {
if(ch == '-') f = -1;
ch = getchar();
}
while(ch >= '0' && ch <= '9') {
res = (res << 1) + (res << 3) + (ch ^ 48);
ch = getchar();
}
return res * f;
}
void write(int x) {
if(x < 0) putchar('-'), x = -x;
static int sta[35];
int top = 0;
do {
sta[top++] = x % 10;
x /= 10;
} while(x);
while(top) putchar(sta[--top] ^ 48);
}
void writeln(int x) {
write(x);
putchar('\n');
}
Submission Info
| Submission Time | |
|---|---|
| Task | F - Jump Traveling |
| User | WZwangchongming |
| Language | C++ 20 (gcc 12.2) |
| Score | 0 |
| Code Size | 3140 Byte |
| Status | TLE |
| Exec Time | 3314 ms |
| Memory | 21892 KiB |
Judge Result
| Set Name | Sample | All | ||||||
|---|---|---|---|---|---|---|---|---|
| Score / Max Score | 0 / 0 | 0 / 525 | ||||||
| Status |
|
|
| Set Name | Test Cases |
|---|---|
| Sample | 00_sample_00.txt, 00_sample_01.txt |
| All | 00_sample_00.txt, 00_sample_01.txt, 01_test_00.txt, 01_test_01.txt, 01_test_02.txt, 01_test_03.txt, 01_test_04.txt, 01_test_05.txt, 01_test_06.txt, 01_test_07.txt, 01_test_08.txt, 02_test_00.txt, 02_test_01.txt, 02_test_02.txt, 02_test_03.txt, 02_test_04.txt, 02_test_05.txt, 02_test_06.txt, 02_test_07.txt, 03_test_00.txt, 03_test_01.txt, 03_test_02.txt, 03_test_03.txt, 03_test_04.txt, 03_test_05.txt, 03_test_06.txt, 03_test_07.txt, 04_test_00.txt, 04_test_01.txt, 04_test_02.txt, 04_test_03.txt, 04_test_04.txt, 05_test_00.txt, 05_test_01.txt, 05_test_02.txt, 05_test_03.txt, 05_test_04.txt, 05_test_05.txt, 05_test_06.txt, 05_test_07.txt, 06_test_00.txt, 06_test_01.txt, 06_test_02.txt, 07_test_00.txt, 07_test_01.txt, 07_test_02.txt, 07_test_03.txt, 07_test_04.txt, 07_test_05.txt, 07_test_06.txt, 07_test_07.txt, 07_test_08.txt, 07_test_09.txt |
| Case Name | Status | Exec Time | Memory |
|---|---|---|---|
| 00_sample_00.txt | AC | 1 ms | 3536 KiB |
| 00_sample_01.txt | AC | 1 ms | 3400 KiB |
| 01_test_00.txt | AC | 35 ms | 6448 KiB |
| 01_test_01.txt | AC | 52 ms | 5912 KiB |
| 01_test_02.txt | AC | 263 ms | 5764 KiB |
| 01_test_03.txt | TLE | 3311 ms | 5740 KiB |
| 01_test_04.txt | TLE | 3311 ms | 10432 KiB |
| 01_test_05.txt | AC | 62 ms | 17832 KiB |
| 01_test_06.txt | AC | 59 ms | 17520 KiB |
| 01_test_07.txt | TLE | 3311 ms | 19100 KiB |
| 01_test_08.txt | TLE | 3311 ms | 19524 KiB |
| 02_test_00.txt | AC | 55 ms | 5924 KiB |
| 02_test_01.txt | AC | 243 ms | 5884 KiB |
| 02_test_02.txt | AC | 2799 ms | 5816 KiB |
| 02_test_03.txt | TLE | 3314 ms | 11084 KiB |
| 02_test_04.txt | AC | 75 ms | 20208 KiB |
| 02_test_05.txt | AC | 46 ms | 18356 KiB |
| 02_test_06.txt | TLE | 3311 ms | 19108 KiB |
| 02_test_07.txt | TLE | 3311 ms | 19528 KiB |
| 03_test_00.txt | AC | 59 ms | 5976 KiB |
| 03_test_01.txt | AC | 79 ms | 5752 KiB |
| 03_test_02.txt | AC | 81 ms | 5636 KiB |
| 03_test_03.txt | AC | 108 ms | 9992 KiB |
| 03_test_04.txt | AC | 62 ms | 17252 KiB |
| 03_test_05.txt | AC | 53 ms | 17324 KiB |
| 03_test_06.txt | AC | 98 ms | 17332 KiB |
| 03_test_07.txt | AC | 174 ms | 17468 KiB |
| 04_test_00.txt | AC | 241 ms | 17460 KiB |
| 04_test_01.txt | AC | 213 ms | 17280 KiB |
| 04_test_02.txt | AC | 127 ms | 17400 KiB |
| 04_test_03.txt | AC | 120 ms | 17280 KiB |
| 04_test_04.txt | AC | 115 ms | 17464 KiB |
| 05_test_00.txt | TLE | 3311 ms | 19512 KiB |
| 05_test_01.txt | TLE | 3311 ms | 19956 KiB |
| 05_test_02.txt | AC | 31 ms | 19604 KiB |
| 05_test_03.txt | AC | 34 ms | 19940 KiB |
| 05_test_04.txt | AC | 27 ms | 18928 KiB |
| 05_test_05.txt | AC | 26 ms | 18908 KiB |
| 05_test_06.txt | AC | 26 ms | 19840 KiB |
| 05_test_07.txt | AC | 26 ms | 19952 KiB |
| 06_test_00.txt | TLE | 3311 ms | 21688 KiB |
| 06_test_01.txt | AC | 583 ms | 21892 KiB |
| 06_test_02.txt | AC | 118 ms | 20148 KiB |
| 07_test_00.txt | TLE | 3311 ms | 21528 KiB |
| 07_test_01.txt | TLE | 3311 ms | 19140 KiB |
| 07_test_02.txt | TLE | 3311 ms | 21764 KiB |
| 07_test_03.txt | TLE | 3311 ms | 18700 KiB |
| 07_test_04.txt | TLE | 3311 ms | 20192 KiB |
| 07_test_05.txt | TLE | 3311 ms | 21596 KiB |
| 07_test_06.txt | TLE | 3311 ms | 19156 KiB |
| 07_test_07.txt | TLE | 3311 ms | 20576 KiB |
| 07_test_08.txt | TLE | 3311 ms | 21344 KiB |
| 07_test_09.txt | TLE | 3311 ms | 19176 KiB |