| Task: | Distribution Center |
| Sender: | ankka22 |
| Submission time: | 2017-03-09 14:03:27 +0200 |
| Language: | C++ |
| Status: | READY |
| Result: | 0 |
| group | verdict | score |
|---|---|---|
| #1 | RUNTIME ERROR | 0 |
| test | verdict | time | |
|---|---|---|---|
| #1 | RUNTIME ERROR | 0.55 s | details |
| #2 | RUNTIME ERROR | 0.23 s | details |
| #3 | RUNTIME ERROR | 0.46 s | details |
| #4 | RUNTIME ERROR | 0.22 s | details |
| #5 | RUNTIME ERROR | 0.21 s | details |
| #6 | RUNTIME ERROR | 0.46 s | details |
| #7 | RUNTIME ERROR | 0.20 s | details |
| #8 | RUNTIME ERROR | 0.46 s | details |
| #9 | RUNTIME ERROR | 0.21 s | details |
| #10 | RUNTIME ERROR | 0.46 s | details |
| #11 | RUNTIME ERROR | 0.22 s | details |
| #12 | RUNTIME ERROR | 0.22 s | details |
| #13 | RUNTIME ERROR | 0.49 s | details |
| #14 | RUNTIME ERROR | 0.21 s | details |
| #15 | RUNTIME ERROR | 0.23 s | details |
| #16 | RUNTIME ERROR | 0.49 s | details |
| #17 | RUNTIME ERROR | 0.20 s | details |
| #18 | RUNTIME ERROR | 0.52 s | details |
| #19 | RUNTIME ERROR | 0.21 s | details |
| #20 | RUNTIME ERROR | 0.22 s | details |
| #21 | RUNTIME ERROR | 0.49 s | details |
| #22 | RUNTIME ERROR | 0.21 s | details |
| #23 | RUNTIME ERROR | 0.46 s | details |
| #24 | RUNTIME ERROR | 0.22 s | details |
| #25 | RUNTIME ERROR | 0.20 s | details |
| #26 | RUNTIME ERROR | 0.46 s | details |
| #27 | RUNTIME ERROR | 0.21 s | details |
| #28 | RUNTIME ERROR | 0.21 s | details |
| #29 | RUNTIME ERROR | 0.45 s | details |
| #30 | RUNTIME ERROR | 0.22 s | details |
| #31 | RUNTIME ERROR | 0.45 s | details |
| #32 | RUNTIME ERROR | 0.22 s | details |
| #33 | RUNTIME ERROR | 0.21 s | details |
| #34 | RUNTIME ERROR | 0.45 s | details |
| #35 | RUNTIME ERROR | 0.21 s | details |
| #36 | RUNTIME ERROR | 0.47 s | details |
| #37 | RUNTIME ERROR | 0.20 s | details |
| #38 | RUNTIME ERROR | 0.23 s | details |
Code
#include <iostream>
#include <algorithm>
#include <vector>
#include <set>
#include <bitset>
using namespace std;
#define F first
#define S second
int n, m, x, y, count, mahd[201010];
bitset<101010> bs[101010];
set<int> se[201010], ses[201010], mist[202020];
pair<int, int> kohtali[202020];
int counter = 0;
vector<int> va[201010], oi[201010], kaet;
void moi(int kohtanyt, int linjanyt, int s) {
counter++;
se[linjanyt].insert(s);
for (auto u: kaet) {
if (u < kohtanyt) continue;
int l1 = kohtali[u].F, l2 = kohtali[u].S;
if (linjanyt == l1 && se[l2].find(s) == se[l2].end()) {
moi(u, l2, s);
} else if (linjanyt == l2 && se[l1].find(s) == se[l1].end()) {
moi(u, l1, s);
}
}
}
int main() {
cin >> n >> m;
for (int i = 1; i <= n; i++) {
mahd[i] = 1;
}
for (int i = 0; i < m; i++) {
cin >> y >> x;
kohtali[y].F = x;
kohtali[y].S = x+1;
kaet.push_back(y);
oi[x].push_back(y);
va[x+1].push_back(y);
}
for (int i = 1; i <= n; i++) {
sort(oi[i].begin(), oi[i].end());
sort(va[i].begin(), va[i].end());
sort(kaet.begin(), kaet.end());
}
/*
for (int i = 1; i <= n; i++) {
cout << "linjan " << i << " vasemmalla: " << endl;
for (auto u: va[i]) {
cout << u << endl;
}
cout << "linjan " << i << " oikealla: " << endl;
for (auto u: oi[i]) {
cout << u << endl;
}
}
cout << "käet kohdittain yyn mukaan" << endl;
for (auto u: kaet) {
cout << "kohdan " << u << " käsi vaikuttaa linjoille: " << endl;
cout << kohtali[u].F << " " << kohtali[u].S << endl;
}
for (int i = 1; i <= n; i++) {
moi(0, i, i);
}
for (int i = 1; i <= n; i++) {
//cout << "linjalle " << i << " tulee linjoilta: " << endl;
//for (auto u: se[i]) {
// cout << u << endl;
//}
cout << se[i].size() << " ";
}*/
for (int i = 1; i <= n; i++) {
bs[i].set(i, 1);
}/*
for (int i = 1; i<= n; i++) {
cout << endl;
for (int ii = 1; ii <= n; ii++) cout << bs[i][ii];
}
cout << endl;
bs[1] |= bs[2];*/
for (auto u: kaet) {
bs[kohtali[u].F] |= bs[kohtali[u].S];
bs[kohtali[u].S] = bs[kohtali[u].F];
}
for (int i = 1; i<= n; i++) {
cout << bs[i].count() << " ";
}
cout << '\n';
}
/*
5 8
1000 1
2000 3
3000 1
4000 2
1500 1
1600 1
500 4
3500 4
*/
Test details
Test 1
Verdict: RUNTIME ERROR
| input |
|---|
| 4 3 1000 1 2000 2 3000 3 |
| correct output |
|---|
| 2 3 4 4 |
| user output |
|---|
| (empty) |
Test 2
Verdict: RUNTIME ERROR
| input |
|---|
| 4 3 1 1 3 2 2 3 |
| correct output |
|---|
| 2 4 4 2 |
| user output |
|---|
| (empty) |
Test 3
Verdict: RUNTIME ERROR
| input |
|---|
| 10 9 100 1 200 2 300 3 400 4 ... |
| correct output |
|---|
| 2 3 4 5 6 7 8 9 10 10 |
| user output |
|---|
| (empty) |
Test 4
Verdict: RUNTIME ERROR
| input |
|---|
| 10 9 100 9 200 8 300 7 400 6 ... |
| correct output |
|---|
| 10 10 9 8 7 6 5 4 3 2 |
| user output |
|---|
| (empty) |
Test 5
Verdict: RUNTIME ERROR
| input |
|---|
| 10 9 100 1 200 9 300 2 400 8 ... |
| correct output |
|---|
| 2 3 4 5 10 10 5 4 3 2 |
| user output |
|---|
| (empty) |
Test 6
Verdict: RUNTIME ERROR
| input |
|---|
| 10 9 100 5 200 4 300 6 400 3 ... |
| correct output |
|---|
| 6 6 5 4 3 3 4 5 6 6 |
| user output |
|---|
| (empty) |
Test 7
Verdict: RUNTIME ERROR
| input |
|---|
| 10 9 100 5 200 5 300 5 400 5 ... |
| correct output |
|---|
| 1 1 1 1 2 2 1 1 1 1 |
| user output |
|---|
| (empty) |
Test 8
Verdict: RUNTIME ERROR
| input |
|---|
| 10 9 100 3 200 7 300 3 400 7 ... |
| correct output |
|---|
| 1 1 2 2 1 1 2 2 1 1 |
| user output |
|---|
| (empty) |
Test 9
Verdict: RUNTIME ERROR
| input |
|---|
| 10 1 1 1 |
| correct output |
|---|
| 2 2 1 1 1 1 1 1 1 1 |
| user output |
|---|
| (empty) |
Test 10
Verdict: RUNTIME ERROR
| input |
|---|
| 10 1 99999 1 |
| correct output |
|---|
| 2 2 1 1 1 1 1 1 1 1 |
| user output |
|---|
| (empty) |
Test 11
Verdict: RUNTIME ERROR
| input |
|---|
| 10 1 99999 9 |
| correct output |
|---|
| 1 1 1 1 1 1 1 1 2 2 |
| user output |
|---|
| (empty) |
Test 12
Verdict: RUNTIME ERROR
| input |
|---|
| 10 1 99999 1 |
| correct output |
|---|
| 2 2 1 1 1 1 1 1 1 1 |
| user output |
|---|
| (empty) |
Test 13
Verdict: RUNTIME ERROR
| input |
|---|
| 100000 1 1 1 |
| correct output |
|---|
| 2 2 1 1 1 1 1 1 1 1 1 1 1 1 1 ... |
| user output |
|---|
| (empty) |
Test 14
Verdict: RUNTIME ERROR
| input |
|---|
| 100000 1 1 99999 |
| correct output |
|---|
| 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ... |
| user output |
|---|
| (empty) |
Test 15
Verdict: RUNTIME ERROR
| input |
|---|
| 3 3 1 1 2 2 3 1 |
| correct output |
|---|
| 3 3 3 |
| user output |
|---|
| (empty) |
Test 16
Verdict: RUNTIME ERROR
| input |
|---|
| 100000 99999 51613 84082 3120 88303 90089 57457 82323 36322 ... |
| correct output |
|---|
| 2 3 3 1 2 2 1 2 2 1 2 3 3 2 2 ... |
| user output |
|---|
| (empty) |
Test 17
Verdict: RUNTIME ERROR
| input |
|---|
| 100000 99999 55166 92759 72522 49885 91041 58065 66993 66182 ... |
| correct output |
|---|
| 1 1 2 4 4 4 4 5 5 5 2 1 3 3 3 ... |
| user output |
|---|
| (empty) |
Test 18
Verdict: RUNTIME ERROR
| input |
|---|
| 100000 99999 90524 19551 22558 32618 68813 64252 16920 55138 ... |
| correct output |
|---|
| 2 3 3 3 3 2 2 2 3 3 3 5 5 5 1 ... |
| user output |
|---|
| (empty) |
Test 19
Verdict: RUNTIME ERROR
| input |
|---|
| 100000 99999 543 67313 25302 10820 96818 55943 93056 11560 ... |
| correct output |
|---|
| 1 1 2 2 2 2 3 3 3 1 3 3 4 4 2 ... |
| user output |
|---|
| (empty) |
Test 20
Verdict: RUNTIME ERROR
| input |
|---|
| 100000 99999 7098 91097 88439 4005 35386 17063 1917 86090 ... |
| correct output |
|---|
| 1 3 3 5 5 3 6 6 6 3 4 4 1 3 3 ... |
| user output |
|---|
| (empty) |
Test 21
Verdict: RUNTIME ERROR
| input |
|---|
| 100000 99999 61671 26653 41901 6290 45318 73847 46486 71566 ... |
| correct output |
|---|
| 2 2 2 2 2 4 4 2 2 4 4 4 4 5 5 ... |
| user output |
|---|
| (empty) |
Test 22
Verdict: RUNTIME ERROR
| input |
|---|
| 100000 99999 46666 39205 52562 49064 91772 40120 98068 12889 ... |
| correct output |
|---|
| 2 2 4 4 3 3 3 2 3 3 2 2 6 6 5 ... |
| user output |
|---|
| (empty) |
Test 23
Verdict: RUNTIME ERROR
| input |
|---|
| 100000 99999 53478 77769 62382 16090 33315 61136 81654 27389 ... |
| correct output |
|---|
| 1 1 1 1 4 4 3 4 4 3 3 3 3 4 4 ... |
| user output |
|---|
| (empty) |
Test 24
Verdict: RUNTIME ERROR
| input |
|---|
| 100000 99999 47015 74422 77958 41967 26483 37045 52560 21334 ... |
| correct output |
|---|
| 2 2 3 3 3 1 1 1 2 2 2 4 4 4 4 ... |
| user output |
|---|
| (empty) |
Test 25
Verdict: RUNTIME ERROR
| input |
|---|
| 100000 99999 30444 72197 95332 46416 50857 42241 79810 99621 ... |
| correct output |
|---|
| 1 1 2 2 2 4 4 4 4 6 6 2 3 3 3 ... |
| user output |
|---|
| (empty) |
Test 26
Verdict: RUNTIME ERROR
| input |
|---|
| 100 99999 15682 14 57251 20 83099 50 57485 33 ... |
| correct output |
|---|
| 100 100 100 100 100 100 100 10... |
| user output |
|---|
| (empty) |
Test 27
Verdict: RUNTIME ERROR
| input |
|---|
| 100 99999 77171 16 89815 40 18710 40 25372 60 ... |
| correct output |
|---|
| 100 100 100 100 100 100 100 10... |
| user output |
|---|
| (empty) |
Test 28
Verdict: RUNTIME ERROR
| input |
|---|
| 100 99999 69498 75 45431 25 35804 53 35830 44 ... |
| correct output |
|---|
| 100 100 100 100 100 100 100 10... |
| user output |
|---|
| (empty) |
Test 29
Verdict: RUNTIME ERROR
| input |
|---|
| 100 99999 14287 85 73750 52 14953 80 27802 96 ... |
| correct output |
|---|
| 100 100 100 100 100 100 100 10... |
| user output |
|---|
| (empty) |
Test 30
Verdict: RUNTIME ERROR
| input |
|---|
| 100 99999 60021 48 2240 89 45435 4 18160 44 ... |
| correct output |
|---|
| 100 100 100 100 100 100 100 10... |
| user output |
|---|
| (empty) |
Test 31
Verdict: RUNTIME ERROR
| input |
|---|
| 200000 99999 6459 28754 89524 100200 40972 165007 35542 79232 ... |
| correct output |
|---|
| 2 3 3 2 2 1 1 2 2 1 1 2 2 2 2 ... |
| user output |
|---|
| (empty) |
Test 32
Verdict: RUNTIME ERROR
| input |
|---|
| 200000 99999 91854 42500 34291 59129 21533 24543 12870 128293 ... |
| correct output |
|---|
| 1 2 2 2 2 2 2 1 1 2 2 2 2 2 2 ... |
| user output |
|---|
| (empty) |
Test 33
Verdict: RUNTIME ERROR
| input |
|---|
| 200000 99999 88029 49150 1821 18264 32450 150397 87753 44993 ... |
| correct output |
|---|
| 3 3 2 1 1 1 1 1 2 2 1 1 2 3 3 ... |
| user output |
|---|
| (empty) |
Test 34
Verdict: RUNTIME ERROR
| input |
|---|
| 200000 99999 18637 75106 91405 193095 10716 115503 78702 119750 ... |
| correct output |
|---|
| 1 2 2 1 1 1 1 2 2 1 3 3 2 1 1 ... |
| user output |
|---|
| (empty) |
Test 35
Verdict: RUNTIME ERROR
| input |
|---|
| 200000 99999 18742 152060 38942 104683 46001 85720 9675 93087 ... |
| correct output |
|---|
| 1 1 1 2 3 3 1 1 1 1 1 2 4 4 2 ... |
| user output |
|---|
| (empty) |
Test 36
Verdict: RUNTIME ERROR
| input |
|---|
| 100000 99999 1 99999 2 99998 3 99997 4 99996 ... |
| correct output |
|---|
| 100000 100000 99999 99998 9999... |
| user output |
|---|
| (empty) |
Test 37
Verdict: RUNTIME ERROR
| input |
|---|
| 4 3 1000 1 2000 2 3000 3 |
| correct output |
|---|
| 2 3 4 4 |
| user output |
|---|
| (empty) |
Test 38
Verdict: RUNTIME ERROR
| input |
|---|
| 4 3 1 1 3 2 2 3 |
| correct output |
|---|
| 2 4 4 2 |
| user output |
|---|
| (empty) |
