QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#709982 | #9535. Arrow a Row | zeng_wj# | AC ✓ | 20ms | 35200kb | C++20 | 1.8kb | 2024-11-04 17:45:45 | 2024-11-04 17:45:45 |
Judging History
answer
#include<bits/stdc++.h>
using namespace std;
#define int long long
#define endl "\n"
#define rep(i,j,k) for(int i = (j) , _i = (k) ; i <= _i ; i ++ )
#define drp(i,j,k) for(int i = (j) , _i = (k) ; i >= _i ; i -- )
const int N=1e6+5;
struct ANS{
pair<int,int> sta1[N],sta2[N];
int top1,top2;
void priopush(int x,int y) {
sta2[++top2]=make_pair(x,y);
}
void push(int x,int y) {
sta1[++top1]=make_pair(x,y);
}
void flush() {
cout<<top1+top2<<endl;
rep(i,1,top2) {
cout<<sta2[i].first<<" "<<sta2[i].second-sta2[i].first+1<<endl;
}
top2=0;
while(top1) {
cout<<sta1[top1].first<<" "<<sta1[top1].second-sta1[top1].first+1<<endl;
top1--;
}
}
}ans;
void solve()
{
string s ;
cin >> s ;
int n = s.size () ;
s = " " + s ;
if(s[1]=='-'||s[n-2]=='-'||s[n-1]=='-'||s[n]=='-') {
cout<<"No"<<endl;
return ;
}
int exist_=0;
rep(i,1,n) exist_|=s[i]=='-';
if(!exist_) {
cout<<"No"<<endl;
return ;
}
cout<<"Yes ";
int consecusive=n;
while(s[consecusive-1]=='>') consecusive--;
while(n-consecusive>2) ans.priopush(n-4,n),n--;
int L=n-3,R=n;
while(s[L-1]=='-') L--;
L--;
ans.push(L,R);
while(L!=1) {
if(s[L-1]=='>') {
ans.push(L-1,L+3);
L--;
}
else {
int head_=L-1;
while(s[head_-1]=='-') head_--;
ans.push(head_-1,L+2);
L=head_-1;
}
}
ans.flush();
}
signed main () {
ios::sync_with_stdio(0) , cin.tie(0) , cout.tie(0) ;
int _ = 1 ;
cin >> _ ;
while (_ -- ) {
solve() ;
}
return 0 ;
}
Details
Tip: Click on the bar to expand more detailed information
Test #1:
score: 100
Accepted
time: 0ms
memory: 34872kb
input:
4 >>->>> >>>-> >>>>> >->>>>>>
output:
Yes 2 1 5 2 5 No No Yes 4 4 5 3 5 2 5 1 5
result:
ok ok (4 test cases)
Test #2:
score: 0
Accepted
time: 0ms
memory: 34884kb
input:
126 >->-->>>> >--->->>>> >--->-->>> >>-->->>> >>-->>>>> >>->->>>> >>->>->>>> >-->->->>> >->->>>>>> >->>> >->->>>>> >>>->->>> >>->>>>>>> >>>>>->>> >->>>->>> >>--->->>> >>->>>> >->>>>->>> >>>>-->>> >---->>> >>>---->>> >>>>->>>> >->>-->>> >-->-->>>> >>---->>> >>--->>> >->>>-->>> >>-->>>> >>---->>>> >>-...
output:
Yes 3 5 5 1 5 3 6 Yes 3 6 5 1 7 5 5 Yes 2 1 7 5 6 Yes 3 1 5 2 6 5 5 Yes 4 5 5 4 5 1 5 2 6 Yes 4 5 5 1 5 2 5 4 5 Yes 5 6 5 1 5 2 5 4 5 5 5 Yes 3 1 6 4 5 6 5 Yes 5 6 5 5 5 4 5 1 5 3 5 Yes 1 1 5 Yes 4 5 5 4 5 1 5 3 5 Yes 4 1 5 2 5 3 5 5 5 Yes 6 6 5 5 5 4 5 3 5 1 5 2 5 Yes 5 1 5 2 5 3 5 4 5 5 5 Yes 4 1 ...
result:
ok ok (126 test cases)
Test #3:
score: 0
Accepted
time: 3ms
memory: 34880kb
input:
4032 >>--->>>>>>>> >->>->->-->->>> >>--->>--->>> >>->->->>>>>>>> >->---->->>> >->>->>---->>>> >>>>>>>>->>>> >->>>--->>>->>> >->>->>-->>>>>> >->>-->---->>> >-->--->>>->>> >->---->>-->>>> >>------>>> >>>-->>--->>>>> >->->->>-->>>> >->->-->>->->>> >>->>>>-->->>>> >>>-->>->--->>> >->->>>>>->>>> >>-->->>...
output:
Yes 7 9 5 8 5 7 5 6 5 5 5 1 5 2 7 Yes 6 1 5 3 5 4 5 6 5 8 6 11 5 Yes 4 1 5 2 7 6 5 7 7 Yes 9 11 5 10 5 9 5 8 5 7 5 1 5 2 5 4 5 6 5 Yes 3 1 5 3 8 8 5 Yes 6 11 5 1 5 3 5 4 5 6 5 7 8 Yes 9 9 5 1 5 2 5 3 5 4 5 5 5 6 5 7 5 8 5 Yes 7 1 5 3 5 4 5 5 7 9 5 10 5 11 5 Yes 8 11 5 10 5 9 5 1 5 3 5 4 5 6 5 7 6 Ye...
result:
ok ok (4032 test cases)
Test #4:
score: 0
Accepted
time: 7ms
memory: 34916kb
input:
10000 >>>>->->>->>->>>> >->-->>->>->>>>>> >->->>-->--->>>>> >---->-->->>>>>>> >->-->>--->>->>>> >->>->>>>>>-->>> >>--->->-->>->>> >-->---->>>->>> >->----->->->>>>> >>--->---->-->>>> >>-->->->--->>> >----->>-->>->>>> >-->->->>>>>->>>> >>->>---->-->>> >>->>-->>>-->>> >------>->>>->>>> >->->-->->>>->>>...
output:
Yes 10 13 5 1 5 2 5 3 5 4 5 6 5 8 5 9 5 11 5 12 5 Yes 9 13 5 12 5 11 5 1 5 3 6 6 5 7 5 9 5 10 5 Yes 7 13 5 12 5 1 5 3 5 5 5 6 6 9 7 Yes 7 13 5 12 5 11 5 10 5 1 8 6 6 9 5 Yes 7 13 5 1 5 3 6 6 5 7 7 11 5 12 5 Yes 9 1 5 3 5 4 5 6 5 7 5 8 5 9 5 10 5 11 6 Yes 6 1 5 2 7 6 5 8 6 11 5 12 5 Yes 5 1 6 4 8 9 5...
result:
ok ok (10000 test cases)
Test #5:
score: 0
Accepted
time: 12ms
memory: 35084kb
input:
10000 >>>-->>>>-->---->->->-->>> >>-->>>>->-->>->>> >->-->--->--->->-->>--->>->->>-->->->>>>>>->>>>----->->--->>----->>-->>>----->->->>>--->>->>-->->->->---->>->>>-->>->->>>->->>>>->>->->>-->>>->>->>-->>>>-->>-->>>->>->->>>--->>>-->>>--->>->->>>>>->->---->>>>->>> ->->>>>--->>>>>>->>>->>>>->->-->-->>...
output:
Yes 11 1 5 2 5 3 6 6 5 7 5 8 5 9 6 12 8 17 5 19 5 21 6 Yes 9 1 5 2 6 5 5 6 5 7 5 8 5 10 6 13 5 14 5 Yes 110 1 5 3 6 6 7 10 7 14 5 16 6 19 5 20 7 24 5 25 5 27 5 29 5 30 6 33 5 35 5 37 5 38 5 39 5 40 5 41 5 42 5 44 5 45 5 46 5 47 9 53 5 55 7 59 5 60 9 66 5 67 6 70 5 71 5 72 9 78 5 80 5 82 5 83 5 84 7 ...
result:
ok ok (10000 test cases)
Test #6:
score: 0
Accepted
time: 17ms
memory: 34900kb
input:
9999 ->->--->>>>->->--->>-- ->>>--->>>-->>--->>--- -->>>>>>>- >>>->>>>>>>-- >>-->-->->----->->>>>->>->---->-> >-->->>>--->->->>->->- >->--->--->>>>->>>----->------>>-->->>> >>->>>->>>---->>>->>>>>>>>>->--->>->>>>>-->>>->->->>-->->--->->-->->>->->->>-->-->>>>>>>>--->>--->->>>-->->----->>-->->>--->-->...
output:
No No No No No No Yes 14 1 5 3 7 7 7 11 5 12 5 13 5 14 5 16 5 17 5 18 9 24 10 31 5 32 6 35 5 Yes 69 1 5 2 5 4 5 5 5 6 5 8 5 9 5 10 8 15 5 16 5 17 5 19 5 20 5 21 5 22 5 23 5 24 5 25 5 26 5 27 5 29 7 33 5 34 5 36 5 37 5 38 5 39 5 40 6 43 5 44 5 45 5 47 5 49 5 51 5 52 6 55 5 57 7 61 5 63 6 66 5 68 5 69...
result:
ok ok (9999 test cases)
Test #7:
score: 0
Accepted
time: 9ms
memory: 34988kb
input:
5 >-->>>>>--->->->>->>>>>->->-->-->->>>-->->--->>>------>->>-->>>------->>---->-->>>>>>-->>--->>-->->->>>>->-->------>>->>>>->>>-->---->--->>-->-->->--->->->->->>->-->->--->>>>->>->--->->>-->>>>>>->>>>->>--->->>-->>->->---->>>->->>->>->--->->->-->->>->->-->->------>>>->>>>>->>-->>->>>->>>>>----->---...
output:
No No Yes 48171 1 5 2 5 3 5 5 5 6 5 7 5 9 5 10 5 12 8 17 5 18 5 19 5 20 5 22 5 23 5 24 5 26 5 27 5 28 5 30 6 33 5 34 5 36 5 37 5 39 5 40 5 41 5 42 5 44 5 45 5 46 5 47 7 51 6 54 9 60 5 61 5 62 5 63 5 64 5 66 5 67 5 68 6 71 5 72 5 73 5 75 5 76 5 77 7 81 5 82 5 83 7 87 5 88 6 91 5 93 5 94 8 99 5 100 8 ...
result:
ok ok (5 test cases)
Test #8:
score: 0
Accepted
time: 16ms
memory: 34944kb
input:
5 >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>...
output:
No Yes 99996 99996 5 1 5 2 5 3 5 4 5 5 5 6 5 7 5 8 5 9 5 10 5 11 5 12 5 13 5 14 5 15 5 16 5 17 5 18 5 19 5 20 5 21 5 22 5 23 5 24 5 25 5 26 5 27 5 28 5 29 5 30 5 31 5 32 5 33 5 34 5 35 5 36 5 37 5 38 5 39 5 40 5 41 5 42 5 43 5 44 5 45 5 46 5 47 5 48 5 49 5 50 5 51 5 52 5 53 5 54 5 55 5 56 5 57 5 58 ...
result:
ok ok (5 test cases)
Test #9:
score: 0
Accepted
time: 19ms
memory: 35000kb
input:
20 >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>...
output:
Yes 24994 24996 5 24995 5 24994 5 24993 5 24992 5 24991 5 24990 5 24989 5 24988 5 24987 5 24986 5 24985 5 24984 5 24983 5 24982 5 24981 5 24980 5 24979 5 24978 5 24977 5 24976 5 24975 5 24974 5 24973 5 24972 5 24971 5 24970 5 24969 5 24968 5 24967 5 24966 5 24965 5 24964 5 24963 5 24962 5 24961 5 24...
result:
ok ok (20 test cases)
Test #10:
score: 0
Accepted
time: 20ms
memory: 35200kb
input:
20 >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>...
output:
Yes 24996 24996 5 24995 5 24994 5 24993 5 24992 5 24991 5 24990 5 24989 5 24988 5 24987 5 24986 5 24985 5 24984 5 24983 5 24982 5 24981 5 24980 5 24979 5 24978 5 24977 5 24976 5 24975 5 24974 5 24973 5 24972 5 24971 5 24970 5 24969 5 24968 5 24967 5 24966 5 24965 5 24964 5 24963 5 24962 5 24961 5 24...
result:
ok ok (20 test cases)
Extra Test:
score: 0
Extra Test Passed