QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#411960#6745. Delete the TreeYnoiynoi#TL 1ms4196kbC++171.2kb2024-05-15 22:20:142024-05-15 22:20:14

Judging History

你现在查看的是最新测评结果

  • [2024-05-15 22:20:14]
  • 评测
  • 测评结果:TL
  • 用时:1ms
  • 内存:4196kb
  • [2024-05-15 22:20:14]
  • 提交

answer

#include<bits/stdc++.h>
using namespace std;

const int N=500+10;
int n,f[N],tot,rt;
bool del[N];
set<int>e[N];
vector<int>tmp;
vector<vector<int>>ans;

void dfs(int x,int fa)
{
	f[x]=fa;
	if(fa) e[x].erase(fa);
	for(int y:e[x]) dfs(y,x);
}

void dfs2(int x)
{
	if(e[x].size()==0)
	{
		del[x]=1,tmp.push_back(x);
	}
	for(int y:e[x]) dfs2(y);
	if(e[x].size()==1&&!del[*e[x].begin()])
	{
		del[x]=1,tmp.push_back(x);
	}
}

int main()
{
//	freopen("1.in","r",stdin);
	scanf("%d",&n);
	for(int i=1;i<n;++i)
	{
		int x,y; scanf("%d%d",&x,&y);
		e[x].insert(y),e[y].insert(x);
	}
	for(int i=1;i<=n;++i) if(e[i].size()>1) rt=i;
	dfs(rt,0);
	while(tot<n)
	{
		tmp.clear();
		dfs2(rt);
		for(int x:tmp)
		{
			if(x==rt)
			{
				if(e[x].size()==0) rt=0;
				else rt=*e[x].begin();
			}
			int fa=f[x],son=e[x].empty()?0:(*e[x].begin());
			if(fa)
			{
				e[fa].erase(x);
				if(son) e[fa].insert(son);
			}
			if(son) f[son]=fa;
		}
		ans.push_back(tmp);
		tot+=tmp.size();
	}
	if(ans.size()>10) while(1);
	printf("%d\n",ans.size());
	for(vector<int>now:ans)
	{
		printf("%d ",now.size());
		for(int x:now) printf("%d ",x);
		puts("");
	}
	return 0;
}

詳細信息

Test #1:

score: 100
Accepted
time: 1ms
memory: 4148kb

input:

5
1 2
1 3
1 4
4 5

output:

3
3 2 3 5 
1 1 
1 4 

result:

ok 

Test #2:

score: 0
Accepted
time: 1ms
memory: 3836kb

input:

500
183 443
32 443
334 443
254 443
331 443
348 443
54 443
430 443
275 443
410 443
360 443
443 468
140 443
179 443
93 443
327 443
128 443
365 443
122 443
43 443
46 443
399 443
398 443
269 443
130 443
227 443
412 443
61 443
295 443
98 443
30 443
197 443
397 443
95 443
192 443
266 443
48 443
310 443
28...

output:

2
499 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 10...

result:

ok 

Test #3:

score: 0
Accepted
time: 1ms
memory: 3904kb

input:

500
80 180
80 254
1 180
80 337
180 323
80 248
180 205
80 189
180 480
80 330
180 454
80 498
142 180
80 193
180 346
80 89
180 389
80 125
180 232
80 93
180 228
80 327
180 357
80 417
180 362
80 278
180 316
80 312
163 180
80 310
176 180
80 463
180 210
80 478
180 294
80 185
124 180
80 143
180 339
80 253
1...

output:

3
498 1 2 4 6 9 11 12 13 14 16 17 19 22 24 25 26 29 30 31 36 37 38 39 40 41 42 44 45 47 49 52 57 58 59 60 66 67 69 70 71 73 74 75 3 5 7 8 10 15 18 20 21 23 27 28 32 33 34 35 43 46 48 50 51 53 54 55 56 61 62 63 64 65 68 72 76 77 78 79 83 86 87 88 89 91 93 94 95 96 98 106 109 111 114 118 120 123 125 1...

result:

ok 

Test #4:

score: 0
Accepted
time: 1ms
memory: 3936kb

input:

500
387 488
301 488
301 413
13 413
13 265
176 265
176 398
74 398
74 241
241 415
386 415
386 448
210 448
210 285
147 285
147 264
19 264
19 314
314 335
54 335
54 261
261 484
425 484
350 425
156 350
156 164
164 420
8 420
8 309
230 309
230 441
408 441
183 408
183 410
204 410
204 318
151 318
151 328
328 ...

output:

10
250 232 220 354 372 278 260 201 497 387 301 13 176 74 415 448 285 264 314 54 484 350 164 8 230 408 410 318 328 494 111 21 477 273 133 310 78 480 192 417 471 266 432 424 269 12 308 226 333 234 104 70 434 457 406 179 473 239 227 190 365 79 81 123 416 483 80 338 467 5 470 22 188 212 347 476 332 341 ...

result:

ok 

Test #5:

score: 0
Accepted
time: 1ms
memory: 3900kb

input:

500
147 209
104 147
13 209
209 466
104 485
17 104
13 214
13 179
151 466
176 466
130 485
286 485
17 359
17 178
214 486
55 214
179 350
179 327
151 167
151 498
146 176
102 176
99 130
130 232
286 294
286 389
56 359
330 359
178 488
178 441
440 486
210 486
55 157
55 458
237 350
350 352
327 371
317 327
167...

output:

9
251 6 20 184 417 19 367 123 383 197 239 233 307 187 420 272 375 32 51 170 196 33 277 44 315 333 412 325 401 250 355 67 107 274 318 66 478 112 275 3 5 313 463 418 472 73 391 41 361 282 374 90 142 392 404 263 471 260 427 304 370 278 362 113 234 356 357 262 497 297 341 221 365 139 403 386 470 180 474...

result:

ok 

Test #6:

score: 0
Accepted
time: 1ms
memory: 3864kb

input:

500
323 449
449 474
198 449
431 449
69 449
336 449
402 449
240 449
43 449
82 449
335 449
86 449
427 449
220 449
26 449
449 477
449 465
73 449
325 449
1 449
144 449
432 449
203 449
443 449
95 323
323 437
323 337
152 323
185 323
323 484
165 323
41 323
322 323
323 334
32 323
118 323
232 323
57 323
323 ...

output:

3
480 12 16 24 40 47 51 72 84 100 114 145 171 190 201 238 287 306 320 330 342 343 356 382 445 1 3 7 10 14 31 60 107 116 193 233 256 257 266 283 291 295 319 357 363 381 408 429 439 441 494 2 4 6 56 121 135 137 157 174 197 202 239 250 273 289 305 326 355 370 380 399 411 447 451 487 17 34 64 65 83 108 ...

result:

ok 

Test #7:

score: 0
Accepted
time: 1ms
memory: 4160kb

input:

500
274 432
133 274
274 491
274 455
207 274
274 315
265 274
10 274
203 274
274 289
274 474
374 432
414 432
116 274
385 414
274 364
1 491
10 365
432 493
10 306
374 463
5 116
302 385
265 285
127 315
86 127
127 246
282 374
98 302
98 206
282 344
127 391
127 231
62 231
33 231
86 104
211 365
194 206
194 4...

output:

9
274 166 41 244 152 141 316 2 45 319 108 24 89 459 355 447 12 53 288 192 425 481 272 17 198 60 136 328 296 201 421 156 410 101 140 336 417 50 383 66 409 420 113 249 239 84 90 490 229 143 237 494 283 226 327 57 78 406 449 255 64 369 6 407 266 437 180 347 223 402 411 79 32 202 38 418 469 318 83 77 41...

result:

ok 

Test #8:

score: 0
Accepted
time: 1ms
memory: 3868kb

input:

500
50 287
287 496
64 287
287 454
149 287
63 287
287 372
108 287
52 287
287 320
287 406
155 287
287 294
128 287
17 287
259 287
6 287
54 294
128 462
247 287
161 287
128 440
172 287
171 287
156 287
397 496
108 270
350 397
287 432
7 259
54 183
280 320
473 496
50 88
432 494
54 195
79 287
50 94
41 320
70...

output:

9
281 107 39 45 248 37 448 230 399 285 302 357 170 412 62 43 133 441 135 210 139 216 233 229 29 112 209 142 420 87 53 292 391 24 151 10 129 330 366 2 85 243 256 331 360 263 298 181 469 433 446 345 489 121 150 276 245 257 315 483 173 439 200 396 361 349 466 477 180 307 309 92 347 227 143 452 365 344 ...

result:

ok 

Test #9:

score: 0
Accepted
time: 1ms
memory: 3904kb

input:

500
93 209
209 367
209 438
209 314
209 332
152 209
209 443
209 471
209 315
209 342
209 459
209 460
209 462
209 211
209 341
191 209
209 329
185 209
209 350
209 468
209 493
209 363
209 224
35 209
209 253
209 212
86 209
204 209
186 209
209 262
193 209
209 275
209 427
141 209
88 209
149 209
209 409
209 ...

output:

9
349 168 384 337 114 277 162 243 102 2 13 14 15 24 28 32 33 35 37 38 42 44 46 47 50 51 54 55 59 61 63 64 67 69 73 78 53 270 299 121 434 81 412 71 498 92 137 87 43 119 452 455 494 48 397 374 151 245 192 161 17 335 52 288 297 202 283 371 226 396 10 172 330 390 123 386 353 271 176 25 280 357 34 108 22...

result:

ok 

Test #10:

score: 0
Accepted
time: 1ms
memory: 4196kb

input:

500
130 139
139 400
130 318
267 318
318 389
21 400
21 36
21 26
267 321
321 401
18 321
200 389
200 307
66 200
36 274
95 274
96 274
26 357
192 357
220 357
385 401
290 385
46 385
18 53
53 301
53 231
166 307
166 287
3 166
66 212
212 410
212 438
95 155
151 155
155 305
41 96
41 478
41 148
112 192
112 137
...

output:

9
332 103 170 35 295 362 293 7 10 257 8 142 169 162 277 195 60 123 25 238 310 297 52 22 283 118 141 178 226 271 492 290 261 473 308 91 480 394 250 14 117 45 202 214 272 335 101 329 408 323 82 415 449 228 127 485 113 152 189 432 298 487 231 348 371 435 80 205 450 157 345 451 245 48 50 255 378 106 38 ...

result:

ok 

Test #11:

score: 0
Accepted
time: 1ms
memory: 3908kb

input:

500
117 264
117 456
175 264
264 500
2 456
218 456
175 480
175 343
265 500
432 500
2 475
2 487
63 218
218 421
377 480
444 480
84 343
151 343
265 281
133 265
252 432
181 432
346 475
445 475
16 487
330 487
25 63
63 102
79 421
101 421
266 377
142 377
409 444
434 444
84 291
84 284
8 151
151 333
281 358
2...

output:

9
251 5 9 12 391 294 338 126 477 150 417 103 139 36 184 179 365 114 303 124 215 123 469 64 347 376 380 231 482 226 465 283 437 159 320 282 397 258 402 227 292 153 154 26 225 74 495 125 462 81 302 193 209 108 485 173 372 383 408 58 304 234 337 214 316 117 94 452 203 382 49 172 392 427 42 260 254 478 ...

result:

ok 

Test #12:

score: -100
Time Limit Exceeded

input:

500
33 453
291 377
33 291
73 424
215 392
66 496
66 215
309 424
66 309
246 291
246 309
154 467
454 482
110 184
110 454
154 455
110 455
56 199
155 494
56 155
294 311
102 109
105 225
105 109
289 311
105 289
155 452
289 452
347 455
347 452
113 246
113 347
43 463
232 292
83 386
83 232
299 463
83 299
293 ...

output:


result: