QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#700627#9535. Arrow a Rowucup-team055#AC ✓21ms5164kbC++202.6kb2024-11-02 13:14:392024-11-02 13:14:41

Judging History

This is the latest submission verdict.

  • [2024-11-02 13:14:41]
  • Judged
  • Verdict: AC
  • Time: 21ms
  • Memory: 5164kb
  • [2024-11-02 13:14:39]
  • Submitted

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
>>->>>
>>>->
>>>>>
>->>>>>>
 */

详细

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