QOJ.ac
QOJ
ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#124877 | #5160. Kebab Pizza | jzh# | TL | 16ms | 7524kb | C++14 | 2.1kb | 2023-07-15 17:20:11 | 2023-07-15 17:20:13 |
Judging History
answer
#include<bits/stdc++.h>
using namespace std;
int main() {
ios::sync_with_stdio(false);
cin.tie(0);
int n, k; cin >> n >> k;
vector<int>d(k+1), cnt(k+1);
vector<vector<int>>g(k+1);
vector<int>vis(k+1);
for(int i = 1 ; i <= n ; i ++) {
int a, b; cin >> a >> b;
if(a==b) {
cnt[a]++;
}
else {
if(find(begin(g[a]), end(g[a]), b)!=end(g[a])) continue;
g[a].push_back(b);
g[b].push_back(a);
d[a]++, d[b]++;
}
vis[a] = vis[b] = true;
}
vector<int>del;
for(int i = 1 ; i <= k ; i ++) {
if(cnt[i]==0 and d[i]==1 and d[g[i][0]]>2) {
del.push_back(i);
}
}
auto update = [&](int i) {
int v = g[i][0];
d[i]--;
d[v]--;
for(int j = 0 ; j < g[v].size() ; j ++) {
if(g[v][j]==i) {
g[v].erase(g[v].begin()+j);
break;
}
}
g[i].pop_back();
vis[i] = false;
};
for(auto &i: del) update(i);
for(int i = 1 ; i <= k ; i ++) {
if(d[i]>2) {
cout << "impossible\n";
return 0;
}
}
int tot = accumulate(begin(vis), end(vis), 0);
if(d==vector<int>(k+1, 0)) {
cout << "possible\n";
return 0;
}
for(int i = 1 ; i <= k ; i ++) {
if(d[i]==2) {
bool flag = true;
int now = g[i][0], pre = i, len = 1;
while(now!=i) {
++len;
if(d[now]==1) {
flag = false;
break;
}
if(g[now][0]==pre) {
pre = now;
now = g[now][1];
}
else {
pre = now;
now = g[now][0];
}
}
if(flag and len!=tot) {
cout << "impossible\n";
return 0;
}
}
}
cout << "possible\n";
return 0;
}
详细
Test #1:
score: 100
Accepted
time: 1ms
memory: 3396kb
input:
7 6 2 2 3 6 1 1 1 5 4 5 6 6 6 5
output:
possible
result:
ok single line: 'possible'
Test #2:
score: 0
Accepted
time: 0ms
memory: 3396kb
input:
5 5 1 3 1 5 2 3 2 5 3 4
output:
possible
result:
ok single line: 'possible'
Test #3:
score: 0
Accepted
time: 1ms
memory: 3396kb
input:
6 7 1 2 2 3 3 4 4 5 3 6 6 7
output:
impossible
result:
ok single line: 'impossible'
Test #4:
score: 0
Accepted
time: 1ms
memory: 3444kb
input:
8 4 1 1 1 2 2 1 2 2 3 3 3 4 4 3 4 4
output:
possible
result:
ok single line: 'possible'
Test #5:
score: 0
Accepted
time: 1ms
memory: 3492kb
input:
4 4 1 2 2 1 3 4 4 3
output:
possible
result:
ok single line: 'possible'
Test #6:
score: 0
Accepted
time: 1ms
memory: 3404kb
input:
5 4 1 1 1 4 2 2 2 4 3 4
output:
possible
result:
ok single line: 'possible'
Test #7:
score: 0
Accepted
time: 1ms
memory: 3424kb
input:
6 4 1 1 1 4 2 2 2 4 3 3 3 4
output:
impossible
result:
ok single line: 'impossible'
Test #8:
score: 0
Accepted
time: 1ms
memory: 3400kb
input:
4 5 1 2 3 4 4 5 5 3
output:
impossible
result:
ok single line: 'impossible'
Test #9:
score: 0
Accepted
time: 1ms
memory: 3464kb
input:
4 4 1 1 2 3 3 4 4 2
output:
impossible
result:
ok single line: 'impossible'
Test #10:
score: 0
Accepted
time: 1ms
memory: 3448kb
input:
3 4 1 2 2 3 3 1
output:
possible
result:
ok single line: 'possible'
Test #11:
score: 0
Accepted
time: 1ms
memory: 3448kb
input:
4 3 1 2 2 3 3 1 1 2
output:
possible
result:
ok single line: 'possible'
Test #12:
score: 0
Accepted
time: 1ms
memory: 3400kb
input:
5 4 1 2 2 3 3 1 1 4 4 4
output:
impossible
result:
ok single line: 'impossible'
Test #13:
score: 0
Accepted
time: 1ms
memory: 3464kb
input:
4 3 1 2 2 3 3 1 1 1
output:
possible
result:
ok single line: 'possible'
Test #14:
score: 0
Accepted
time: 1ms
memory: 3464kb
input:
6 6 1 2 2 3 3 1 4 5 5 6 6 4
output:
impossible
result:
ok single line: 'impossible'
Test #15:
score: 0
Accepted
time: 1ms
memory: 3404kb
input:
4 6 1 2 2 3 4 5 5 6
output:
possible
result:
ok single line: 'possible'
Test #16:
score: 0
Accepted
time: 1ms
memory: 3428kb
input:
4 8 1 2 3 4 5 6 7 8
output:
possible
result:
ok single line: 'possible'
Test #17:
score: 0
Accepted
time: 0ms
memory: 3444kb
input:
3 3 1 2 2 3 1 2
output:
possible
result:
ok single line: 'possible'
Test #18:
score: 0
Accepted
time: 1ms
memory: 3460kb
input:
13 11 11 7 8 6 4 8 1 2 6 7 6 2 2 9 3 8 11 8 6 11 8 2 9 1 9 11
output:
impossible
result:
ok single line: 'impossible'
Test #19:
score: 0
Accepted
time: 1ms
memory: 3432kb
input:
1635 131 40 13 22 72 98 70 81 118 124 122 90 12 24 5 86 61 45 75 91 80 14 1 28 74 84 27 120 83 75 117 44 130 127 38 58 64 22 17 12 48 107 87 37 131 41 15 11 48 5 46 127 50 123 75 43 124 93 5 17 83 26 130 66 122 55 105 36 119 116 49 98 89 73 86 119 99 16 24 39 90 33 72 94 22 19 13 101 9 116 8 33 95 8...
output:
impossible
result:
ok single line: 'impossible'
Test #20:
score: 0
Accepted
time: 0ms
memory: 3528kb
input:
1803 1766 967 1468 1305 1669 617 36 1564 714 53 1045 1536 80 467 373 375 1173 1750 210 1433 81 667 798 1345 825 274 85 1107 1425 1576 560 30 405 1324 129 612 332 506 1708 87 1587 337 891 503 786 1140 304 1439 966 841 234 1270 696 1557 1607 763 1422 196 461 1485 557 1509 44 511 1050 623 1587 687 1758...
output:
impossible
result:
ok single line: 'impossible'
Test #21:
score: 0
Accepted
time: 8ms
memory: 7524kb
input:
39505 78410 3175 40148 52846 78310 27128 59546 19323 44017 2534 68741 70302 1985 11003 6218 54155 11195 34079 21458 44804 11586 56941 46235 76524 20594 62563 17285 45626 5887 42683 63518 60306 151 25930 34002 19196 26270 3757 34394 60466 29619 32474 33236 59760 26098 11678 74638 51383 12205 16010 45...
output:
impossible
result:
ok single line: 'impossible'
Test #22:
score: 0
Accepted
time: 4ms
memory: 5100kb
input:
8364 43972 17102 14140 29056 23018 21282 40801 16760 27492 17370 13743 20137 31183 37298 39871 39916 31212 2472 25458 10766 38742 27020 14591 40426 32321 8831 30814 19561 2976 30423 21646 21760 2454 19103 43674 38828 43679 42838 37929 24460 3928 24227 35224 11041 27999 43445 11000 29465 16355 2591 2...
output:
impossible
result:
ok single line: 'impossible'
Test #23:
score: 0
Accepted
time: 12ms
memory: 7044kb
input:
62138 58240 56929 31261 38519 49289 3011 27909 9851 14304 38929 33991 48684 39971 18479 4049 22461 52271 20936 40010 7797 20153 44481 10183 14006 35620 30917 829 40099 53767 8041 16634 52764 57279 30667 3334 15542 23939 19932 25368 53529 51386 9452 45573 55315 41467 39172 3995 43732 4915 21116 28286...
output:
impossible
result:
ok single line: 'impossible'
Test #24:
score: 0
Accepted
time: 16ms
memory: 4840kb
input:
96147 6603 5405 3128 1267 2523 352 4758 3190 3000 1108 3762 2150 3562 3704 1748 5120 5883 1240 1219 731 6400 2477 6176 3583 474 562 3046 2864 730 1048 3532 4002 1102 3424 1197 3034 478 3828 1494 5543 5660 6478 4998 1650 2397 549 2073 3667 1440 266 4790 2118 4951 3993 3619 3383 6127 3748 6174 416 757...
output:
impossible
result:
ok single line: 'impossible'
Test #25:
score: 0
Accepted
time: 13ms
memory: 7212kb
input:
59974 62084 32353 28539 59280 13133 49252 34406 61223 21059 42029 57591 29291 9619 43338 58447 43639 4549 52967 11881 57304 46567 51189 42869 38788 9223 40539 8837 48395 28893 8002 40786 8531 48490 59796 34964 1120 1788 3282 26976 9492 14840 26847 20287 5078 50996 26323 42319 46119 339 38541 32471 2...
output:
impossible
result:
ok single line: 'impossible'
Test #26:
score: 0
Accepted
time: 16ms
memory: 5652kb
input:
66303 31218 11606 28363 6297 26839 14830 4154 7429 23837 8049 26652 19828 30249 25628 29398 25551 16332 9419 1805 22735 10642 26312 15045 22346 29624 28230 24039 5367 3575 12948 20105 22260 4125 20861 4699 19171 10016 14977 6636 29361 30501 2793 25021 17148 23728 623 20838 595 6709 26966 23795 15754...
output:
impossible
result:
ok single line: 'impossible'
Test #27:
score: 0
Accepted
time: 1ms
memory: 3448kb
input:
6 5 3 5 1 4 1 5 1 5 3 5 1 4
output:
possible
result:
ok single line: 'possible'
Test #28:
score: 0
Accepted
time: 1ms
memory: 3508kb
input:
57 33 29 3 3 3 15 3 3 15 10 9 9 10 9 3 3 29 9 10 9 9 15 3 3 29 10 9 3 3 3 3 9 9 9 10 3 3 9 16 9 9 3 3 10 9 15 3 3 3 9 9 9 16 9 3 3 3 9 3 3 3 3 3 3 29 3 9 3 15 3 3 9 9 3 3 3 3 3 3 3 3 3 29 3 3 16 9 16 9 3 3 29 3 9 9 3 15 3 3 3 3 3 3 9 16 29 3 3 15 9 10 29 3 3 15
output:
possible
result:
ok single line: 'possible'
Test #29:
score: 0
Accepted
time: 1ms
memory: 3576kb
input:
749 5820 4064 4001 100 3402 2357 1581 5035 706 3879 3357 123 4811 903 4490 1526 3240 2789 2743 5665 4251 4431 5665 2709 1238 521 5759 4251 44 2186 3391 3568 1309 3737 3145 268 2671 1404 2625 776 2307 2302 5521 4568 4568 85 4427 75 3592 5417 829 5723 3057 4276 2016 4602 1713 3910 819 3832 4519 2330 8...
output:
possible
result:
ok single line: 'possible'
Test #30:
score: 0
Accepted
time: 3ms
memory: 4448kb
input:
3959 28593 20802 427 10098 17983 7801 25453 15913 27977 6712 57 1968 8174 21031 15236 4992 572 24524 13948 9929 9033 26523 22817 25555 10087 16719 3570 2780 18164 6274 381 8503 14510 959 18943 9511 28334 6738 378 23560 681 27886 27479 27516 6213 19283 9299 22984 5750 8254 19879 16914 17851 4029 8313...
output:
possible
result:
ok single line: 'possible'
Test #31:
score: -100
Time Limit Exceeded
input:
99399 92859 74766 37233 74159 84535 20438 47217 43527 9495 59116 24081 49662 85445 75811 77418 12642 27876 7551 7551 2889 2889 89996 89996 58701 58701 73693 48184 86413 35809 27339 27339 30081 30081 38709 38709 32389 32389 78694 78694 26987 62008 17043 17043 51047 63444 61948 63760 46627 46627 39926...