QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#671973#9161. Naval battleRDFZchenyy56 545ms71236kbC++146.4kb2024-10-24 15:11:362024-10-24 15:11:37

Judging History

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

  • [2024-10-24 15:11:37]
  • 评测
  • 测评结果:56
  • 用时:545ms
  • 内存:71236kb
  • [2024-10-24 15:11:36]
  • 提交

answer

#include<bits/stdc++.h>

#define ls (id<<1)
#define rs ((id<<1)|1)

#define MAXN 200005
#define MAXSZ 600005

const int mv=2000000001;

struct Crash{
    int t;
    int xp,yp;

    friend bool operator<(Crash a,Crash b){
        return a.t>b.t;
    }
};
struct Node{
    int pl,pr;
    int px,py;
    int s;
};


std::unordered_map<long long,bool> vis;

int n;
int u[MAXN],v[MAXN]; char c[MAXN];
int rk[MAXSZ]; int ans[MAXN];
int typ[MAXSZ];
int p[MAXSZ],pos[MAXSZ],pl[MAXSZ],pr[MAXSZ];
Node t[MAXSZ<<2];
std::priority_queue<Crash> pq;
std::set<int> upd,us; int lst=0;

Node merge(Node a,Node b){
    Node res;
    res.px=-1,res.py=-1;
    if(a.pl+1) res.pl=a.pl;
    else res.pl=b.pl;
    if(b.pr+1) res.pr=b.pr;
    else res.pr=a.pr;
    int v=mv;
    if((a.pr+1)&&(b.pl+1)){
        v=p[b.pl]-p[a.pr];
        res.px=a.pr,res.py=b.pl;
    }
    if(a.s<b.s){
        if(a.s<v) v=a.s,res.px=a.px,res.py=a.py;
    }else if(b.s<v) v=b.s,res.px=b.px,res.py=b.py;
    res.s=v;
    return res;
}
void build(int id,int l,int r){
    if(l==r){
        if(typ[l]==1) t[id].px=t[id].py=t[id].pl=-1,t[id].pr=l,t[id].s=mv;
        else t[id].px=t[id].py=t[id].pr=-1,t[id].pl=l,t[id].s=mv;
        return;
    }
    int mid=(l+r)>>1;
    build(ls,l,mid),build(rs,mid+1,r);
    t[id]=merge(t[ls],t[rs]);
    return;
}
void del(int id,int l,int r,int pos){
    if(l==r) t[id].px=t[id].py=t[id].pl=t[id].pr=-1,t[id].s=mv;
    else{
        int mid=(l+r)>>1;
        if(pos<=mid) del(ls,l,mid,pos);
        else del(rs,mid+1,r,pos);
        t[id]=merge(t[ls],t[rs]);
    }
    return;
}
Node query(int id,int l,int r,int tl,int tr){
    if(tl<=l&&r<=tr) return t[id];
    int mid=(l+r)>>1;
    if(tr<=mid) return query(ls,l,mid,tl,tr);
    else if(tl>mid) return query(rs,mid+1,r,tl,tr);
    else return merge(query(ls,l,mid,tl,tr),query(rs,mid+1,r,tl,tr));
}

int read(){
    int res=0; char c=getchar();
    while(c<'0'||c>'9') c=getchar();
    while(c>='0'&&c<='9') res=(res<<3)+(res<<1)+(c^48),c=getchar();
    return res;
}
char readL(){
    char c=getchar();
    while(c<'A'||c>'Z') c=getchar();
    return c;
}

bool chk(int x,char a,char b){
    return c[x]==a||c[x]==b;
}

bool cmp1(int x,int y){
    if(chk(x,'N','W')^chk(y,'N','W')) return chk(x,'N','W');
    else if(u[x]+v[x]!=u[y]+v[y]) return u[x]+v[x]<u[y]+v[y];
    else return u[x]<u[y];
}
bool cmp2(int x,int y){
    if(chk(x,'N','E')^chk(y,'N','E')) return chk(x,'N','E');
    else if(u[x]-v[x]!=u[y]-v[y]) return u[x]-v[x]<u[y]-v[y];
    else return u[x]<u[y];
}
bool cmp3(int x,int y){
    if(chk(x,'N','S')^chk(y,'N','S')) return chk(x,'N','S');
    else{
        if(chk(x,'N','S')){
            if(u[x]!=u[y]) return u[x]<u[y];
            else return v[x]<v[y];
        }else{
            if(v[x]!=v[y]) return v[x]<v[y];
            else return u[x]<u[y];
        }
    }
}

long long calc(Crash x){
    return (long long)x.xp*mv+x.yp;
}

int main(){
    n=read();
    for(int i=1;i<=n;i++) u[i]=read(),v[i]=read(),c[i]=readL();
    for(int i=1;i<=n;i++) rk[n+n+i]=rk[n+i]=rk[i]=i;
    std::sort(rk+1,rk+n+1,cmp1); 
    std::sort(rk+n+1,rk+n+n+1,cmp2);
    std::sort(rk+n+n+1,rk+n+n+n+1,cmp3);
    for(int i=1;i<=n;i++){
        if(chk(rk[i],'N','W')){
            if(i==1) pl[1]=1;
            else if(u[rk[i]]+v[rk[i]]==u[rk[i-1]]+v[rk[i-1]]) pl[i]=pl[i-1];
            else pl[i]=i;
            typ[i]=(c[rk[i]]=='N'?1:-1); pos[rk[i]]=i; p[i]=u[rk[i]]-v[rk[i]];
        }else{
            if(i==1) pl[1]=1;
            else if(chk(rk[i-1],'N','W')) pl[i]=i;
            else if(u[rk[i]]+v[rk[i]]==u[rk[i-1]]+v[rk[i-1]]) pl[i]=pl[i-1];
            else pl[i]=i;
            typ[i]=(c[rk[i]]=='E'?1:-1); pos[rk[i]]=i; p[i]=u[rk[i]]-v[rk[i]];
        }
    }
    for(int i=n+1;i<=2*n;i++){
        if(chk(rk[i],'N','E')){
            if(i==n+1) pl[n+1]=n+1;
            else if(u[rk[i]]-v[rk[i]]==u[rk[i-1]]-v[rk[i-1]]) pl[i]=pl[i-1];
            else pl[i]=i;
            typ[i]=(c[rk[i]]=='E'?1:-1); pos[rk[i]+n]=i,p[i]=u[rk[i]]+v[rk[i]];
        }else{
            if(i==n+1) pl[n+1]=n+1;
            else if(chk(rk[i],'N','E')) pl[i]=i;
            else if(u[rk[i]]-v[rk[i]]==u[rk[i-1]]-v[rk[i-1]]) pl[i]=pl[i-1];
            else pl[i]=i;
            typ[i]=(c[rk[i]]=='S'?1:-1); pos[rk[i]+n]=i,p[i]=u[rk[i]]+v[rk[i]];
        }
    }
    for(int i=2*n+1;i<=3*n;i++){
        if(chk(rk[i],'N','S')){
            if(i==2*n+1) pl[2*n+1]=2*n+1;
            else if(u[rk[i]]==u[rk[i-1]]) pl[i]=pl[i-1];
            else pl[i]=i;
            typ[i]=(c[rk[i]]=='S'?1:-1); pos[rk[i]+n*2]=i,p[i]=v[rk[i]];
        }else{
            if(i==2*n+1) pl[2*n+1]=2*n+1;
            else if(chk(rk[i],'N','S')) pl[i]=i;
            else if(v[rk[i]]==v[rk[i-1]]) pl[i]=pl[i-1];
            else pl[i]=i;
            typ[i]=(c[rk[i]]=='E'?1:-1); pos[rk[i]+n*2]=i,p[i]=u[rk[i]];
        }
    }
    pr[3*n]=3*n;
    for(int i=3*n-1;i>=1;i--){
        if(pl[i]==pl[i+1]) pr[i]=pr[i+1];
        else pr[i]=i;
    }

    build(1,1,3*n);
    
    for(int i=1;i<=3*n;i++){
        if(pl[i]==i){
            Node d=query(1,1,3*n,pl[i],pr[i]);
            if(d.s!=mv) pq.push((Crash){d.s,d.px,d.py});
        }
    }
    while(!pq.empty()){
        Crash tp=pq.top(); pq.pop();
        if(vis[calc(tp)]) continue;
        vis[calc(tp)]=true;

        if(tp.t>lst){
            us.clear();
            for(int i:upd){
                del(1,1,3*n,pos[i]); del(1,1,3*n,pos[i+n]); del(1,1,3*n,pos[i+2*n]);
                us.insert(pl[pos[i]]); us.insert(pl[pos[i+n]]); us.insert(pl[i+pos[2*n]]);
            }
            for(int i:us){
                Node d=query(1,1,3*n,pl[i],pr[i]);
                if(d.s!=mv) pq.push((Crash){d.s,d.px,d.py});                
            }
            upd.clear();
        }
        bool xok=ans[rk[tp.xp]]&&(ans[rk[tp.xp]]<tp.t);
        bool yok=ans[rk[tp.yp]]&&(ans[rk[tp.yp]]<tp.t);
        if(xok||yok){
            continue;
        }
        ans[rk[tp.xp]]=ans[rk[tp.yp]]=tp.t;
        del(1,1,3*n,tp.xp),del(1,1,3*n,tp.yp);
        upd.insert(rk[tp.xp]),upd.insert(rk[tp.yp]);
        Node d=query(1,1,3*n,pl[tp.xp],pr[tp.xp]);
        if(d.s!=mv) pq.push((Crash){d.s,d.px,d.py});          
        lst=tp.t;
    }
    for(int i=1;i<=n;i++){
        if(!ans[i]) std::cout<<i<<'\n';
    }

    return 0;
}

详细

Subtask #1:

score: 6
Accepted

Test #1:

score: 6
Accepted
time: 3ms
memory: 17852kb

input:

2
675333810 792019962 W
851860476 960355168 W

output:

1
2

result:

ok 

Test #2:

score: 6
Accepted
time: 0ms
memory: 17952kb

input:

2
714148610 688520844 W
359519570 789553998 S

output:

1
2

result:

ok 

Test #3:

score: 6
Accepted
time: 2ms
memory: 17928kb

input:

2
743286406 87591094 E
108453484 326740470 S

output:

1
2

result:

ok 

Test #4:

score: 6
Accepted
time: 0ms
memory: 17860kb

input:

2
629499666 659260200 W
391550936 897208930 N

output:


result:

ok 

Test #5:

score: 6
Accepted
time: 2ms
memory: 17940kb

input:

2
509095668 374922996 W
325521434 191348762 S

output:


result:

ok 

Test #6:

score: 6
Accepted
time: 0ms
memory: 17860kb

input:

2
357656592 713571312 E
456601638 614626266 S

output:


result:

ok 

Test #7:

score: 6
Accepted
time: 0ms
memory: 17812kb

input:

2
353512742 374956722 W
265604916 462864548 N

output:


result:

ok 

Test #8:

score: 6
Accepted
time: 2ms
memory: 15868kb

input:

2
253519292 302668732 E
436627396 119560628 S

output:


result:

ok 

Test #9:

score: 6
Accepted
time: 0ms
memory: 18112kb

input:

2
741954822 709863076 W
516385128 484293380 S

output:

1
2

result:

ok 

Test #10:

score: 6
Accepted
time: 2ms
memory: 17864kb

input:

2
268851874 524109226 E
503673708 758931058 N

output:

1
2

result:

ok 

Test #11:

score: 6
Accepted
time: 0ms
memory: 18164kb

input:

2
629380956 395789270 S
557401140 467769088 E

output:

1
2

result:

ok 

Test #12:

score: 6
Accepted
time: 0ms
memory: 17808kb

input:

2
606361496 587557658 N
667076156 526843000 W

output:

1
2

result:

ok 

Test #13:

score: 6
Accepted
time: 2ms
memory: 18116kb

input:

2
270428340 629167054 N
270428342 179345630 S

output:

1
2

result:

ok 

Subtask #2:

score: 12
Accepted

Test #14:

score: 12
Accepted
time: 0ms
memory: 15928kb

input:

100
32 46 N
8 24 W
74 86 W
2 76 N
90 70 N
34 74 N
4 68 N
42 26 N
66 94 N
28 40 W
96 12 W
82 78 W
54 24 N
36 42 W
92 68 W
0 26 N
14 54 N
94 66 N
26 52 N
66 12 W
72 6 W
64 96 W
6 20 N
4 22 W
26 42 N
40 28 W
70 76 N
18 60 N
62 16 N
30 48 N
36 36 W
42 36 W
52 94 N
62 98 N
0 78 N
70 2 W
28 50 N
80 80 W
8...

output:


result:

ok 

Test #15:

score: 12
Accepted
time: 0ms
memory: 17952kb

input:

100
70 62 N
56 42 N
42 56 W
64 4 N
50 48 W
56 76 N
78 20 W
96 96 W
60 72 N
44 24 N
2 10 N
52 80 W
38 30 N
94 4 W
58 74 W
68 30 W
54 76 N
0 68 N
36 32 N
10 58 W
70 60 W
86 92 N
100 78 W
2 66 W
20 48 N
16 52 N
8 60 N
98 94 N
86 46 W
74 24 W
26 42 W
66 66 W
28 40 W
56 12 W
90 42 W
8 4 W
76 30 W
78 54 W...

output:


result:

ok 

Test #16:

score: 12
Accepted
time: 2ms
memory: 15900kb

input:

100
36 44 E
96 66 E
28 20 E
36 2 E
32 64 W
76 58 E
82 20 E
76 50 E
22 48 W
38 52 E
90 16 N
22 12 W
64 82 S
84 14 E
92 52 E
76 36 E
72 52 N
100 58 S
82 4 E
2 0 N
90 100 E
68 8 S
24 36 S
80 86 W
72 56 W
8 66 W
84 18 S
18 60 N
64 96 E
2 76 S
74 90 E
64 0 S
12 10 S
56 40 S
40 6 S
2 4 S
74 2 S
90 80 N
2 ...

output:

1
2
3
4
5
6
8
10
11
12
13
14
15
19
20
21
23
24
26
28
29
30
31
32
33
35
36
37
39
40
41
42
45
46
47
48
49
50
51
53
54
56
57
58
59
61
62
63
64
65
69
70
71
73
74
76
77
78
79
81
83
84
85
87
89
91
92
93
95
96
98
99

result:

ok 

Test #17:

score: 12
Accepted
time: 0ms
memory: 17944kb

input:

100
24 52 S
72 60 E
72 64 W
98 52 N
46 30 E
18 62 W
70 6 S
14 58 S
12 24 W
2 54 E
20 58 S
70 40 S
8 90 E
92 16 S
26 42 E
72 8 N
46 48 S
18 64 N
80 78 E
46 20 S
26 76 W
56 68 N
82 2 N
78 72 N
54 6 N
98 8 S
52 64 N
64 88 W
6 90 N
58 96 S
30 4 E
54 48 N
36 10 S
4 32 S
20 40 W
70 30 W
16 16 W
84 80 N
52...

output:

1
2
9
11
13
14
15
16
17
19
21
22
23
24
25
26
28
29
30
32
35
37
38
39
40
44
45
46
47
48
49
51
55
57
58
59
61
62
63
64
65
66
67
68
71
72
74
76
79
80
81
84
86
87
88
90
92
93
95
96
99
100

result:

ok 

Test #18:

score: 12
Accepted
time: 0ms
memory: 17956kb

input:

100
58 98 W
90 40 W
62 34 W
56 72 S
96 56 E
62 62 E
54 32 S
84 98 W
62 100 N
18 82 W
36 86 N
34 64 W
94 74 N
90 78 N
14 42 S
58 78 W
6 60 N
60 92 W
64 60 N
84 58 S
0 84 N
36 80 W
12 0 N
28 54 E
24 64 N
60 16 E
26 40 S
32 30 W
26 28 S
94 78 N
26 0 E
20 84 E
0 56 S
8 48 N
76 0 S
6 94 N
6 14 W
80 22 S
...

output:

1
3
4
5
9
11
12
13
14
15
18
19
20
22
23
24
25
28
29
30
32
34
37
38
41
43
47
49
50
53
55
56
58
59
60
62
63
65
66
68
69
72
73
74
75
76
77
78
79
80
81
82
86
88
89
91
92
93
94
96
97
98
99
100

result:

ok 

Test #19:

score: 12
Accepted
time: 0ms
memory: 15936kb

input:

100
4 18 N
2 2 W
0 2 E
4 2 E
8 14 N
6 14 N
6 2 W
2 14 W
0 24 E
0 22 E
0 18 N
0 20 E
4 32 W
8 6 E
2 12 N
8 20 S
2 22 N
4 38 S
8 18 N
4 24 W
8 12 W
2 32 N
8 4 N
4 14 N
2 28 W
8 22 S
0 32 W
8 28 N
8 0 E
8 24 W
8 30 W
0 12 W
4 10 E
0 28 S
2 10 E
8 8 S
6 36 S
2 24 W
0 6 N
4 22 W
2 8 N
2 16 S
4 34 N
6 28 ...

output:

11
14
18
20
22
23
25
27
29
31
32
33
36
37
39
44
45
53
57
59
61
62
63
66
71
75
78
80
81
84
85
88
90
92
94

result:

ok 

Test #20:

score: 12
Accepted
time: 0ms
memory: 17952kb

input:

100
2 38 E
6 6 N
8 22 N
4 32 E
0 20 N
2 14 E
6 30 N
6 20 W
4 20 S
2 22 W
8 30 S
2 8 N
0 24 S
8 38 S
0 32 W
4 0 E
6 14 W
0 16 W
8 8 E
8 10 W
0 38 S
0 10 N
2 26 W
8 6 E
0 8 E
8 32 N
4 10 S
6 28 E
0 36 S
4 30 S
0 14 N
2 0 W
0 6 W
6 18 W
4 28 S
6 2 E
6 38 W
4 8 S
6 12 N
0 4 E
4 36 E
4 24 E
6 26 W
8 12 E...

output:

1
3
8
9
10
14
15
16
17
18
19
21
22
24
25
28
29
31
33
34
35
36
40
41
44
49
52
53
57
58
60
65
70
71
76
77
82
83
87
88
89
96
98
100

result:

ok 

Test #21:

score: 12
Accepted
time: 2ms
memory: 15920kb

input:

100
4 12 S
8 8 N
4 14 N
2 18 N
8 12 E
0 16 W
2 4 W
4 28 S
4 36 N
4 18 N
4 16 N
0 0 S
8 26 N
2 36 N
2 30 E
8 10 N
4 32 E
2 32 N
4 38 W
0 8 E
4 30 E
6 4 E
8 36 W
8 28 S
6 32 N
0 18 S
4 22 S
4 2 W
2 12 S
8 16 S
8 14 W
0 26 W
0 34 E
0 24 W
0 32 S
8 34 S
6 26 E
0 38 N
4 0 W
6 28 N
4 8 S
0 14 N
2 0 E
6 34...

output:

5
6
10
11
13
16
19
20
22
26
29
32
33
34
37
42
50
51
55
56
60
63
64
71
72
76
78
79
83
84
90
91
93
94
98
99

result:

ok 

Test #22:

score: 12
Accepted
time: 0ms
memory: 17960kb

input:

100
8 20 W
4 38 E
2 12 N
0 10 S
8 12 S
2 10 N
2 24 E
0 28 N
2 38 N
4 28 E
2 20 N
0 18 S
2 36 N
6 38 W
4 32 E
8 28 W
0 6 S
8 22 E
6 4 W
4 16 N
0 0 S
4 26 W
6 10 N
2 2 E
0 34 E
6 32 N
4 24 E
8 8 N
8 32 E
8 16 N
4 4 S
8 4 S
8 2 E
4 36 S
0 32 W
4 10 S
2 34 W
6 6 S
6 14 S
4 14 S
2 14 W
4 34 E
0 30 S
2 26...

output:

1
3
7
9
12
18
21
28
29
31
33
34
35
41
45
47
50
52
57
60
63
65
68
72
75
76
78
80
84
85
86
87
92
94
95
100

result:

ok 

Test #23:

score: 12
Accepted
time: 2ms
memory: 17888kb

input:

100
2 30 W
2 18 W
0 38 S
6 26 N
8 22 S
2 32 E
4 2 E
6 6 N
2 6 N
2 26 N
2 22 E
8 28 N
0 4 S
0 16 W
6 38 S
6 4 S
4 8 S
2 0 E
0 32 N
6 34 N
2 28 S
4 30 S
0 2 S
4 0 S
4 36 N
0 34 W
8 18 S
4 26 W
4 6 N
6 22 W
6 12 E
8 38 S
4 18 W
8 16 W
4 34 E
8 6 N
8 14 W
2 14 S
0 18 E
4 14 N
6 24 S
6 36 S
8 8 E
6 0 N
8...

output:

3
9
14
15
18
21
23
26
28
30
32
33
35
37
42
43
44
47
53
57
58
63
65
69
73
75
81
83
84
85
87
88
90
92
94
95
96
97
98

result:

ok 

Subtask #3:

score: 8
Accepted

Dependency #2:

100%
Accepted

Test #24:

score: 8
Accepted
time: 3ms
memory: 17960kb

input:

100
55730 78040 N
63588 61556 N
44452 89318 W
70518 63252 W
63870 69900 N
20558 13736 W
30676 3618 N
46556 87214 N
52984 80786 N
51668 82102 W
31696 2598 W
93292 40478 N
79566 54204 N
46984 86786 W
90284 34962 N
37124 96646 W
38832 94938 W
85994 47776 W
71794 61976 N
89082 44688 N
60614 73156 N
7647...

output:


result:

ok 

Test #25:

score: 8
Accepted
time: 3ms
memory: 17960kb

input:

100
89110 38332 W
42340 85102 W
47418 80024 W
36474 90968 W
11938 13920 W
32012 6604 W
31220 96222 N
12142 13716 W
28714 98728 N
47380 80062 N
20394 5464 N
97828 29614 W
9938 15920 N
17380 8478 W
10590 15268 W
3890 21968 W
8526 17332 N
51116 76326 N
780 25078 W
23234 2624 N
4140 21718 N
49462 77980 ...

output:


result:

ok 

Test #26:

score: 8
Accepted
time: 0ms
memory: 17948kb

input:

100
10138 25622 N
12350 94320 S
68742 84806 N
73166 78152 W
53518 51538 N
83720 65326 S
81334 87838 N
69820 4332 S
69138 91530 W
86906 38254 N
25342 21074 N
23272 16252 E
5752 87852 W
67080 1234 S
74952 7542 W
86348 8834 N
62828 43150 S
86604 90224 W
6126 20522 N
51694 71626 W
42958 83600 E
13780 84...

output:

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

result:

ok 

Test #27:

score: 8
Accepted
time: 3ms
memory: 17948kb

input:

100
70604 7840 W
88940 45568 W
194 75976 S
38568 51448 N
72120 46152 N
38612 66590 E
62926 10054 N
39128 81952 S
98506 14260 S
42086 41668 N
67944 35330 E
29958 62258 E
86268 1596 W
35940 56784 S
20480 59980 E
98806 10992 W
60714 55652 W
65056 14044 W
35222 82646 S
26772 58918 N
95446 42006 S
62272 ...

output:

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

result:

ok 

Test #28:

score: 8
Accepted
time: 0ms
memory: 17956kb

input:

100
4962 87014 W
56952 20966 S
79906 44760 N
71132 3734 S
48274 99414 E
96384 63090 N
46686 63154 E
91934 52946 S
73082 3184 E
75820 95966 E
80582 84570 S
25330 5670 N
72038 65094 E
67754 71728 W
22160 67544 N
59072 98152 S
88728 38842 W
24380 87238 S
70220 16454 W
31884 23260 E
27962 29112 N
11678 ...

output:

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

result:

ok 

Test #29:

score: 8
Accepted
time: 0ms
memory: 18176kb

input:

100
6 26 E
4 6 N
2 38 N
0 30 N
8 20 W
4 10 S
6 14 S
0 24 E
6 18 N
4 20 W
0 34 S
4 32 W
4 38 N
6 4 E
0 14 N
2 6 N
2 26 E
2 14 W
0 28 W
8 28 N
0 0 E
2 30 S
6 8 W
8 36 S
4 18 E
8 14 E
8 16 N
2 20 E
4 0 E
8 34 S
2 32 N
6 16 N
6 38 N
8 8 S
0 2 N
8 0 E
4 14 S
4 28 W
8 22 E
2 16 E
4 2 E
2 34 W
0 8 W
6 0 N
...

output:

2
3
4
5
8
9
11
14
17
19
24
26
27
29
30
35
36
39
41
42
43
44
45
46
49
63
67
69
71
72
74
77
78
79
80
81
83
87
91
97
99
100

result:

ok 

Test #30:

score: 8
Accepted
time: 0ms
memory: 15948kb

input:

100
8 20 E
0 16 S
4 30 W
6 6 S
6 22 E
0 20 S
4 2 S
2 34 W
8 26 N
8 32 E
0 30 E
0 22 E
0 38 E
4 24 E
4 18 S
8 8 N
0 10 E
2 16 N
8 14 N
0 12 N
2 20 E
6 36 E
6 16 S
4 38 W
4 4 W
2 38 S
4 16 W
8 24 S
4 32 N
6 24 W
2 18 N
8 12 N
8 4 E
8 10 W
0 18 S
2 36 N
0 14 W
4 36 W
2 0 W
4 20 N
6 34 N
2 6 E
8 16 E
6 ...

output:

1
2
6
7
10
26
32
33
35
37
39
43
46
50
56
58
60
63
67
75
76
79
81
85
89
94
95
96
98

result:

ok 

Test #31:

score: 8
Accepted
time: 2ms
memory: 18188kb

input:

100
0 34 E
8 36 N
6 14 W
4 26 W
2 26 W
0 16 S
0 2 S
6 18 N
0 20 N
2 6 E
8 32 W
0 24 E
0 4 N
6 0 N
0 8 W
2 2 N
6 20 E
6 22 W
2 32 S
8 10 S
8 6 E
2 34 S
8 34 E
4 20 S
4 0 E
4 38 S
8 22 W
4 34 N
2 14 E
8 16 N
2 12 E
6 2 N
2 28 E
8 4 S
4 32 W
8 8 S
8 2 N
0 22 S
0 18 N
0 14 W
4 36 N
8 20 N
0 30 N
8 14 S
...

output:

5
9
14
15
16
17
21
22
23
26
27
28
33
37
40
41
45
48
53
61
63
65
67
69
70
71
72
73
75
81
83
84
90
93
94
95
100

result:

ok 

Test #32:

score: 8
Accepted
time: 2ms
memory: 17952kb

input:

100
2 2 N
8 28 N
2 28 N
8 10 N
4 28 E
4 34 W
6 14 W
4 30 N
4 4 S
2 34 W
6 18 N
0 24 E
2 14 E
4 32 S
2 36 E
8 32 E
2 12 E
0 0 N
8 30 N
6 10 N
4 10 W
4 16 N
2 0 N
8 22 E
0 34 N
0 36 W
8 38 E
8 26 W
6 36 W
6 16 N
6 34 W
6 38 S
8 0 S
4 12 E
0 28 W
6 4 W
2 32 S
0 8 S
0 14 W
8 6 S
6 26 S
2 20 E
4 14 E
0 4...

output:

10
11
16
18
19
21
23
24
25
26
27
32
35
39
45
46
50
51
52
56
57
58
62
63
64
66
69
70
73
75
78
81
82
83
84
85
86
89
92
95
96
97
98
100

result:

ok 

Test #33:

score: 8
Accepted
time: 2ms
memory: 17836kb

input:

100
0 18 E
0 12 W
8 8 W
0 2 N
0 38 S
4 36 E
6 2 W
4 26 N
6 36 W
2 24 S
8 18 E
8 12 N
2 32 W
4 28 W
2 18 E
4 34 S
0 34 S
8 28 S
0 22 N
4 0 N
4 22 E
2 12 E
2 28 W
6 0 N
2 16 S
2 14 N
0 10 S
8 24 E
2 2 E
8 32 N
8 4 N
0 24 W
2 0 S
6 24 E
8 30 N
2 38 W
6 16 N
8 10 N
2 30 N
8 20 N
0 8 E
4 38 S
6 10 N
8 14...

output:

2
4
5
10
11
12
13
17
20
22
23
24
26
27
28
30
32
34
36
38
42
51
52
60
64
66
70
72
73
74
75
76
79
81
84
90
92
93
98
100

result:

ok 

Subtask #4:

score: 0
Wrong Answer

Dependency #1:

100%
Accepted

Dependency #2:

100%
Accepted

Dependency #3:

100%
Accepted

Test #34:

score: 11
Accepted
time: 0ms
memory: 18120kb

input:

200
418707804 884434338 N
555991098 928743606 W
392083690 430592748 W
698318694 647664350 N
628346348 194330090 W
584668884 977074926 N
671813258 150863180 N
682186188 620955954 N
635355860 926387950 N
710571802 851172008 W
829084908 516898136 W
547697376 274979062 N
493718438 991016266 N
874643460 ...

output:


result:

ok 

Test #35:

score: 11
Accepted
time: 0ms
memory: 17972kb

input:

200
847227196 820455410 N
7504288 76298524 N
751161348 916521258 N
231937054 366177574 W
478897096 119217532 N
518375114 79739514 N
335464316 262650312 N
65495114 18307698 W
211213756 386900872 N
79343914 4458898 W
414728052 183386576 W
31940314 51862498 N
307592722 290521906 N
471142204 126972424 W...

output:


result:

ok 

Test #36:

score: 11
Accepted
time: 2ms
memory: 17972kb

input:

200
937922402 479776042 N
737800950 669865080 N
94805170 786037934 N
279746956 772502456 N
839034342 860639288 S
728946458 157523896 N
526290022 279816454 N
666552716 909472406 S
339809716 124530126 S
691515652 699889668 E
243448022 372701686 W
40705500 565704662 W
234888440 753665074 E
999020110 79...

output:


result:

ok 

Test #37:

score: 11
Accepted
time: 0ms
memory: 17976kb

input:

200
995999350 525531220 S
771273924 486313170 E
801521866 212496224 E
842601274 967310936 W
697173728 308932872 S
514384138 863306956 E
688208648 451164400 W
4055886 291549990 E
442157654 665686428 E
982849734 467740562 N
785429168 348853242 S
715944898 416902070 S
99245012 894514728 E
833840070 261...

output:


result:

ok 

Test #38:

score: 11
Accepted
time: 2ms
memory: 15936kb

input:

200
401533264 133551616 W
495086744 491731536 S
880037162 520197302 N
363177994 882753098 S
296457894 617495150 W
810026496 471602802 W
295788616 70005724 N
914121936 334621246 E
962136934 9787394 S
293673484 191965774 S
661172796 323578246 S
818763068 947754102 S
640808176 647808156 E
517530886 183...

output:

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
101
102
...

result:

ok 

Test #39:

score: 11
Accepted
time: 0ms
memory: 17900kb

input:

200
525664546 412363198 E
909814220 642373718 E
543300502 244470052 E
622069396 666730138 N
90088532 951020440 W
839792914 179824668 E
417475036 86373024 W
642976434 584508552 N
805709716 443000254 W
966217702 390830980 S
761538128 736216542 N
334614868 111893978 W
62995774 156400960 E
404867350 261...

output:

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
101
102
...

result:

ok 

Test #40:

score: 11
Accepted
time: 2ms
memory: 17976kb

input:

200
554261220 990433238 W
848708254 150721804 W
620691606 804513644 W
117305592 369401062 W
206334656 16987934 S
701896230 442280398 N
15947918 237986778 S
799544510 473710284 W
171408440 793114152 E
247006190 762387132 W
276509060 936608066 S
777366706 76339550 E
469787190 686521590 E
401275090 604...

output:

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
101
102
...

result:

ok 

Test #41:

score: 0
Wrong Answer
time: 0ms
memory: 17992kb

input:

200
2 30 W
2 0 S
2 12 E
10 32 N
8 0 S
0 0 W
10 28 W
12 54 E
2 28 S
12 8 N
2 50 S
8 52 E
10 8 N
8 44 N
0 28 S
0 18 W
2 38 W
14 0 E
12 46 N
12 48 E
6 0 N
6 38 E
4 36 S
10 36 W
12 12 N
8 38 E
4 44 E
8 46 E
4 46 S
8 12 W
4 38 N
12 40 S
0 46 W
10 16 S
2 52 E
8 6 E
12 18 S
0 32 W
14 6 W
2 20 E
0 30 N
0 52...

output:

1
3
6
8
11
16
17
18
19
20
21
24
26
33
38
42
44
58
59
63
64
70
72
79
80
91
97
98
101
104
105
109
110
111
117
119
124
127
129
134
149
152
155
158
161
163
167
168
173
175
177
180
181
188
189
190
199

result:

FAIL Unexpected end of file - token expected (/var/uoj_data/9161/41.ans)

Subtask #5:

score: 0
Skipped

Dependency #4:

0%

Subtask #6:

score: 30
Accepted

Test #58:

score: 30
Accepted
time: 545ms
memory: 67220kb

input:

200000
526715640 430855204 E
731546662 226024182 S
254814720 702756124 E
227354364 730216480 S
764250602 193320242 S
150102088 807468756 E
204858572 752712272 S
635512190 322058654 E
403910248 553660596 S
257917918 4587926 S
949444340 8126504 S
907805098 49765746 S
553836306 403734538 S
40977864 617...

output:


result:

ok 

Test #59:

score: 30
Accepted
time: 541ms
memory: 67152kb

input:

200000
49807058 551453536 S
912071804 329648260 E
419320288 181940306 S
782015644 459704420 E
481787934 119472660 S
415682572 185578022 E
179604736 421655858 E
301356118 299904476 E
353873612 271679996 E
228215568 373045026 S
135196366 466064228 E
283328822 317931772 S
46447784 554812810 S
316201696...

output:


result:

ok 

Test #60:

score: 30
Accepted
time: 441ms
memory: 68188kb

input:

176146
300873980 786927014 E
790003068 165796398 E
749865014 863323264 S
436936218 157236050 S
397770254 450222406 S
485732108 78259410 S
41354530 472465106 E
887439666 371255344 E
124841048 192531136 S
148591896 22935244 S
306340430 586720996 E
567973664 846954348 S
684406062 154686710 E
693649864 ...

output:


result:

ok 

Test #61:

score: 30
Accepted
time: 442ms
memory: 68172kb

input:

176200
925233074 814682098 E
568432234 13441354 S
484262992 272477328 S
158978078 20120660 S
893397554 160241062 S
751909180 715444298 S
208992058 827145154 S
412237740 546261136 S
338408780 271805998 E
815418640 355051290 E
976553702 905622826 E
857611462 834179634 S
906111624 426633546 S
403730260...

output:


result:

ok 

Test #62:

score: 30
Accepted
time: 143ms
memory: 62984kb

input:

200000
101496054 979858228 E
920611908 702401460 S
520518410 139919454 E
399656414 901493922 E
13516644 96042148 E
245648844 231035904 E
764355194 276588538 S
996306054 310601486 E
786798600 855338184 E
994867310 672987224 S
579872970 756137766 S
781862354 643502988 S
84441740 245739906 S
203009366 ...

output:

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
101
102
...

result:

ok 

Test #63:

score: 30
Accepted
time: 146ms
memory: 62892kb

input:

200000
527978012 655552976 E
367561552 287545914 E
109269874 785653618 S
593357740 388019526 S
559862448 71088562 S
757736766 642977878 E
596651936 802122060 E
726526424 755843838 E
907457664 73340276 E
115634476 26185946 S
373222698 792179306 E
326091516 103452644 E
409098972 861128728 E
486159912 ...

output:

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
101
102
...

result:

ok 

Test #64:

score: 30
Accepted
time: 144ms
memory: 62896kb

input:

200000
840116210 558689674 E
419874916 668247716 E
706701702 531127374 S
1235386 416545400 E
729427828 202817966 E
343924344 473507730 S
56565780 233269258 E
662681036 328877994 E
179823328 572544632 E
785195282 51398910 S
854800144 214285546 E
379414682 1601316 S
901409854 730921418 E
801144786 716...

output:

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
101
102
...

result:

ok 

Test #65:

score: 30
Accepted
time: 474ms
memory: 71224kb

input:

200000
300 1080 E
168 1186 S
244 968 S
218 1566 S
400 736 E
244 364 S
112 1722 E
144 1164 E
178 470 S
242 1626 E
2 456 E
278 760 E
242 1442 E
196 302 S
188 314 S
414 512 E
50 1162 S
114 1056 E
314 412 E
398 1302 S
408 1658 S
288 1490 E
184 134 E
348 544 E
234 1760 E
196 1472 S
280 376 E
324 1662 S
4...

output:

27
39
46
64
67
76
81
83
84
96
97
107
109
110
130
143
158
163
164
166
176
182
188
194
205
208
223
230
251
268
272
275
285
299
301
307
308
326
347
351
359
369
416
429
459
479
488
499
500
507
513
515
516
526
530
540
550
556
584
595
601
602
609
619
622
632
648
649
655
657
661
662
666
720
728
737
743
752...

result:

ok 

Test #66:

score: 30
Accepted
time: 493ms
memory: 70952kb

input:

200000
246 1304 E
372 564 E
282 1226 E
166 302 E
350 256 E
336 860 S
392 1148 E
330 1588 E
446 642 S
86 120 E
276 420 S
418 776 E
90 1420 E
272 400 S
326 470 S
104 232 S
102 284 E
292 708 E
368 1156 E
236 1756 E
412 666 E
6 1756 S
408 332 S
390 466 S
380 480 S
358 374 E
38 818 S
362 482 E
170 630 E
...

output:

2
7
9
21
39
42
45
46
65
66
73
80
103
105
108
124
134
137
153
157
163
166
170
180
201
206
222
223
224
245
250
253
256
257
263
280
282
285
286
299
301
306
331
351
354
386
409
413
415
435
436
437
438
440
458
469
472
485
493
498
501
510
511
515
524
592
597
618
651
654
657
678
682
684
687
695
720
725
735...

result:

ok 

Test #67:

score: 30
Accepted
time: 467ms
memory: 70896kb

input:

200000
36 1570 E
280 458 S
414 498 E
98 336 S
86 794 E
330 362 E
40 964 S
346 386 E
28 604 S
48 1694 S
84 460 S
240 1754 E
340 36 E
206 1332 E
132 612 S
98 426 S
26 172 S
100 960 E
360 610 E
236 546 S
446 42 S
160 1744 E
166 258 S
144 978 S
170 1626 S
416 18 S
252 1356 S
258 1278 E
352 1028 S
442 12...

output:

9
10
16
17
30
36
50
66
70
77
83
100
102
104
117
127
131
157
160
163
172
182
200
214
224
225
230
245
249
264
265
269
270
274
294
300
307
313
320
327
336
337
342
343
365
392
394
405
426
438
442
449
454
464
472
483
495
505
522
530
535
545
552
562
564
567
581
595
601
602
618
619
620
668
677
682
685
687
...

result:

ok 

Test #68:

score: 30
Accepted
time: 492ms
memory: 71228kb

input:

200000
88 1742 E
164 776 E
10 1262 S
200 1200 S
284 716 S
328 1096 E
398 438 S
138 1382 E
296 706 E
422 1780 S
212 228 S
72 1418 S
284 220 E
422 1444 E
314 736 S
140 1370 S
348 188 E
22 720 S
348 1418 S
332 546 S
426 248 E
222 188 S
28 244 S
6 1210 E
144 1358 E
186 54 E
412 638 E
240 1598 E
336 1710...

output:

1
4
7
43
60
65
81
97
98
103
114
135
140
167
178
187
188
192
193
194
200
210
218
229
234
247
252
253
255
272
273
274
291
292
303
315
319
323
336
337
348
351
352
362
364
377
381
387
389
399
405
433
441
459
468
483
505
514
528
529
536
548
561
563
571
584
599
604
605
614
638
643
654
658
666
669
674
684
...

result:

ok 

Test #69:

score: 30
Accepted
time: 465ms
memory: 71236kb

input:

200000
100 1404 E
82 1670 S
128 972 E
424 18 E
202 472 E
180 1230 E
320 1606 S
242 1212 E
26 834 E
350 912 S
436 1458 E
18 1476 S
322 1668 E
8 1426 E
0 1644 E
370 1122 S
110 432 E
126 1128 E
338 94 S
344 1736 E
440 516 S
314 1246 E
194 1068 E
358 1386 E
32 1752 E
244 1608 S
292 1494 E
236 1454 S
216...

output:

18
20
22
70
95
99
121
122
136
151
160
167
194
206
207
209
213
215
218
221
233
235
237
246
254
258
297
303
319
334
351
352
368
374
376
388
399
400
401
404
415
419
421
469
496
502
513
523
526
544
573
600
627
635
639
665
667
668
671
684
688
711
712
714
728
738
743
747
749
763
799
806
809
810
823
831
83...

result:

ok 

Subtask #7:

score: 0
Skipped

Dependency #1:

100%
Accepted

Dependency #2:

100%
Accepted

Dependency #3:

100%
Accepted

Dependency #4:

0%