QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#700627 | #9535. Arrow a Row | ucup-team055# | AC ✓ | 21ms | 5164kb | C++20 | 2.6kb | 2024-11-02 13:14:39 | 2024-11-02 13:14:41 |
Judging History
answer
#include <bits/stdc++.h>
using namespace std;
using ll=long long;
using ld=long double;
const ll ILL=2167167167167167167;
const int INF=2100000000;
#define rep(i,a,b) for (int i=(int)(a);i<(int)(b);i++)
#define all(p) p.begin(),p.end()
template<class T> using _pq = priority_queue<T, vector<T>, greater<T>>;
template<class T> ll LB(vector<T> &v,T a){return lower_bound(v.begin(),v.end(),a)-v.begin();}
template<class T> ll UB(vector<T> &v,T a){return upper_bound(v.begin(),v.end(),a)-v.begin();}
template<class T> bool chmin(T &a,T b){if(a>b){a=b;return 1;}else return 0;}
template<class T> bool chmax(T &a,T b){if(a<b){a=b;return 1;}else return 0;}
template<class T> void So(vector<T> &v) {sort(v.begin(),v.end());}
template<class T> void Sore(vector<T> &v) {sort(v.begin(),v.end(),[](T x,T y){return x>y;});}
bool yneos(bool a,bool upp=0){if(a){cout<<(upp?"YES\n":"Yes\n");}else{cout<<(upp?"NO\n":"No\n");}return a;}
template<class T> void vec_out(vector<T> &p,int ty=0){
if(ty==2){cout<<'{';for(int i=0;i<(int)p.size();i++){if(i){cout<<",";}cout<<'"'<<p[i]<<'"';}cout<<"}\n";}
else{if(ty==1){cout<<p.size()<<"\n";}for(int i=0;i<(int)(p.size());i++){if(i) cout<<" ";cout<<p[i];}cout<<"\n";}}
template<class T> T vec_min(vector<T> &a){assert(!a.empty());T ans=a[0];for(auto &x:a) chmin(ans,x);return ans;}
template<class T> T vec_max(vector<T> &a){assert(!a.empty());T ans=a[0];for(auto &x:a) chmax(ans,x);return ans;}
template<class T> T vec_sum(vector<T> &a){T ans=T(0);for(auto &x:a) ans+=x;return ans;}
int pop_count(long long a){int res=0;while(a){res+=(a&1),a>>=1;}return res;}
void solve();
// CYAN / FREDERIC
int main() {
ios::sync_with_stdio(false);
cin.tie(nullptr);
int t = 1;
cin >> t;
rep(i, 0, t) solve();
}
void solve(){
string S;
cin >> S;
int N = S.size();
if (S[0] != '>' || S.substr(N - 3, 3) != ">>>"){
cout << "No\n";
return;
}
int r = N - 1;
while (r != -1 && S[r] == '>') r--;
if (r == -1){
cout << "No\n";
return;
}
vector<pair<int, int>> ans;
int l = r;
while (S[l] == '-') l--;
ans.push_back({l, r + 4});
rep(i, r + 5, N + 1){
ans.push_back({i - 5, i});
}
l--;
while (l != -1){
r = l + 5;
while (S[l] == '-') l--;
ans.push_back({l, r});
l--;
}
reverse(all(ans));
cout << "Yes ";
cout << ans.size() << "\n";
for (auto x : ans){
cout << x.first + 1 << " " << x.second - x.first << "\n";
}
}
/*
4
>>->>>
>>>->
>>>>>
>->>>>>>
*/
Details
Tip: Click on the bar to expand more detailed information
Test #1:
score: 100
Accepted
time: 0ms
memory: 3640kb
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: 3836kb
input:
126 >->-->>>> >--->->>>> >--->-->>> >>-->->>> >>-->>>>> >>->->>>> >>->>->>>> >-->->->>> >->->>>>>> >->>> >->->>>>> >>>->->>> >>->>>>>>> >>>>>->>> >->>>->>> >>--->->>> >>->>>> >->>>>->>> >>>>-->>> >---->>> >>>---->>> >>>>->>>> >->>-->>> >-->-->>>> >>---->>> >>--->>> >->>>-->>> >>-->>>> >>---->>>> >>-...
output:
Yes 3 1 6 5 5 3 6 Yes 3 1 8 6 5 5 5 Yes 2 1 8 5 6 Yes 3 1 5 2 7 5 5 Yes 4 1 5 5 5 4 5 2 6 Yes 4 1 5 2 6 5 5 4 5 Yes 5 1 5 2 6 4 5 6 5 5 5 Yes 3 1 7 4 6 6 5 Yes 5 1 6 6 5 5 5 4 5 3 5 Yes 1 1 5 Yes 4 1 6 5 5 4 5 3 5 Yes 4 1 5 2 5 3 6 5 5 Yes 6 1 5 6 5 5 5 4 5 3 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: 0ms
memory: 3584kb
input:
4032 >>--->>>>>>>> >->>->->-->->>> >>--->>--->>> >>->->->>>>>>>> >->---->->>> >->>->>---->>>> >>>>>>>>->>>> >->>>--->>>->>> >->>->>-->>>>>> >->>-->---->>> >-->--->>>->>> >->---->>-->>>> >>------>>> >>>-->>--->>>>> >->->->>-->>>> >->->-->>->->>> >>->>>>-->->>>> >>>-->>->--->>> >->->>>>>->>>> >>-->->>...
output:
Yes 7 1 5 9 5 8 5 7 5 6 5 5 5 2 7 Yes 6 1 6 3 5 4 6 6 6 8 7 11 5 Yes 4 1 5 2 8 6 5 7 7 Yes 9 1 5 2 6 4 6 11 5 10 5 9 5 8 5 7 5 6 5 Yes 3 1 6 3 9 8 5 Yes 6 1 6 3 5 4 6 6 5 11 5 7 8 Yes 9 1 5 2 5 3 5 4 5 5 5 6 5 7 5 9 5 8 5 Yes 7 1 6 3 5 4 5 5 8 9 5 10 5 11 5 Yes 8 1 6 3 5 4 6 6 5 11 5 10 5 9 5 7 6 Ye...
result:
ok ok (4032 test cases)
Test #4:
score: 0
Accepted
time: 9ms
memory: 3884kb
input:
10000 >>>>->->>->>->>>> >->-->>->>->>>>>> >->->>-->--->>>>> >---->-->->>>>>>> >->-->>--->>->>>> >->>->>>>>>-->>> >>--->->-->>->>> >-->---->>>->>> >->----->->->>>>> >>--->---->-->>>> >>-->->->--->>> >----->>-->>->>>> >-->->->>>>>->>>> >>->>---->-->>> >>->>-->>>-->>> >------>->>>->>>> >->->-->->>>->>>...
output:
Yes 10 1 5 2 5 3 5 4 6 6 6 8 5 9 6 11 5 13 5 12 5 Yes 9 1 6 3 7 6 5 7 6 9 5 13 5 12 5 11 5 10 5 Yes 7 1 6 3 6 5 5 6 7 13 5 12 5 9 7 Yes 7 1 9 6 7 13 5 12 5 11 5 10 5 9 5 Yes 7 1 6 3 7 6 5 7 8 11 5 13 5 12 5 Yes 9 1 6 3 5 4 6 6 5 7 5 8 5 9 5 10 5 11 6 Yes 6 1 5 2 8 6 6 8 7 11 5 12 5 Yes 5 1 7 4 9 9 5...
result:
ok ok (10000 test cases)
Test #5:
score: 0
Accepted
time: 17ms
memory: 3544kb
input:
10000 >>>-->>>>-->---->->->-->>> >>-->>>>->-->>->>> >->-->--->--->->-->>--->>->->>-->->->>>>>>->>>>----->->--->>----->>-->>>----->->->>>--->>->>-->->->->---->>->>>-->>->->>>->->>>>->>->->>-->>>->>->>-->>>>-->>-->>>->>->->>>--->>>-->>>--->>->->>>>>->->---->>>>->>> ->->>>>--->>>>>>->>>->>>>->->-->-->>...
output:
Yes 11 1 5 2 5 3 7 6 5 7 5 8 5 9 7 12 9 17 6 19 6 21 6 Yes 9 1 5 2 7 5 5 6 5 7 5 8 6 10 7 13 5 14 5 Yes 110 1 6 3 7 6 8 10 8 14 6 16 7 19 5 20 8 24 5 25 6 27 6 29 5 30 7 33 6 35 6 37 5 38 5 39 5 40 5 41 5 42 6 44 5 45 5 46 5 47 10 53 6 55 8 59 5 60 10 66 5 67 7 70 5 71 5 72 10 78 6 80 6 82 5 83 5 84...
result:
ok ok (10000 test cases)
Test #6:
score: 0
Accepted
time: 14ms
memory: 3596kb
input:
9999 ->->--->>>>->->--->>-- ->>>--->>>-->>--->>--- -->>>>>>>- >>>->>>>>>>-- >>-->-->->----->->>>>->>->---->-> >-->->>>--->->->>->->- >->--->--->>>>->>>----->------>>-->->>> >>->>>->>>---->>>->>>>>>>>>->--->>->>>>>-->>>->->->>-->->--->->-->->>->->->>-->-->>>>>>>>--->>--->->>>-->->----->>-->->>--->-->...
output:
No No No No No No Yes 14 1 6 3 8 7 8 11 5 12 5 13 5 14 6 16 5 17 5 18 10 24 11 31 5 32 7 35 5 Yes 69 1 5 2 6 4 5 5 5 6 6 8 5 9 5 10 9 15 5 16 5 17 6 19 5 20 5 21 5 22 5 23 5 24 5 25 5 26 5 27 6 29 8 33 5 34 6 36 5 37 5 38 5 39 5 40 7 43 5 44 5 45 6 47 6 49 6 51 5 52 7 55 6 57 8 61 6 63 7 66 6 68 5 6...
result:
ok ok (9999 test cases)
Test #7:
score: 0
Accepted
time: 9ms
memory: 4520kb
input:
5 >-->>>>>--->->->>->>>>>->->-->-->->>>-->->--->>>------>->>-->>>------->>---->-->>>>>>-->>--->>-->->->>>>->-->------>>->>>>->>>-->---->--->>-->-->->--->->->->->>->-->->--->>>>->>->--->->>-->>>>>>->>>>->>--->->>-->>->->---->>>->->>->>->--->->->-->->>->->-->->------>>>->>>>>->>-->>->>>->>>>>----->---...
output:
No No Yes 48171 1 5 2 5 3 6 5 5 6 5 7 6 9 5 10 6 12 9 17 5 18 5 19 5 20 6 22 5 23 5 24 6 26 5 27 5 28 6 30 7 33 5 34 6 36 5 37 6 39 5 40 5 41 5 42 6 44 5 45 5 46 5 47 8 51 7 54 10 60 5 61 5 62 5 63 5 64 6 66 5 67 5 68 7 71 5 72 5 73 6 75 5 76 5 77 8 81 5 82 5 83 8 87 5 88 7 91 6 93 5 94 9 99 5 100 9...
result:
ok ok (5 test cases)
Test #8:
score: 0
Accepted
time: 19ms
memory: 5164kb
input:
5 >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>...
output:
No Yes 99996 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 5 59 5 6...
result:
ok ok (5 test cases)
Test #9:
score: 0
Accepted
time: 21ms
memory: 3852kb
input:
20 >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>...
output:
Yes 24994 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 5 59 5 60 5...
result:
ok ok (20 test cases)
Test #10:
score: 0
Accepted
time: 19ms
memory: 3848kb
input:
20 >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>...
output:
Yes 24996 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 5 59 5 60 5...
result:
ok ok (20 test cases)
Extra Test:
score: 0
Extra Test Passed