QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#746386#9535. Arrow a RowWaO_o#AC ✓22ms7072kbC++202.0kb2024-11-14 14:28:232024-11-14 14:28:23

Judging History

This is the latest submission verdict.

  • [2024-11-14 14:28:23]
  • Judged
  • Verdict: AC
  • Time: 22ms
  • Memory: 7072kb
  • [2024-11-14 14:28:23]
  • Submitted

answer

#include <bits/stdc++.h>

using namespace std;

#define deg( x ) cout<<""#x"="<<x<<endl
#define endl '\n'
#define int long long
#define pll pair<int,int>
#define fr first
#define se second

const int N=1e5+10;

string pan( vector<pll> &A , int n ){
    string s;
    for( int i=1; i<=n; i++ ) s+='*';
    for( auto [ l , r ]:A ){
        if( r-l+1 < 5 ) return "*";
        s[ l-1 ]='>';
        for( int i=l; i<r-3; i++ ) s[ i ]='-';
        s[ r-1 ]=s[ r-2 ]=s[ r-3 ]='>';
    }

    return s;
}

void solve(){
    string s;
    cin>>s;

    int n=s.size();

    vector<pll> ans;

    if( n<5 ){
        cout<<"No"<<endl;
        return;
    }
    if( s[ 0 ]=='>' && s[ n-1 ]==s[ n-2 ] && s[ n-2 ]==s[ n-3 ] && s[ n-1 ]=='>' ){
        int o=0;
        for( int i=0; i<n; i++ ){
            if( s[ i ]=='-' ) o++;
        }

        ans.push_back( { n-4 , n } );

        if( o==0 ){
            cout<<"No"<<endl;
            return;
        }
        else{
            int nn=n;
            while( s[ n-4 ]=='>' ){
                n--;
                ans.push_back( { n-4 , n } );
            }

            for( int l=0; l<=n-4; l++ ){
                int r=l+4;
                if( s[ l ]=='-' ) continue;
                if( s[ l+1 ]=='>' ){
                    ans.push_back( { l+1 , r+1 } );
                }
                else{
                    int cnt=-1;
                    int e=l+1;
                    while( s[ e ]=='-' ) cnt++ , e++;
                    r+=cnt;
                    ans.push_back( { l+1 , r+1 } );
                }
            }
            cout<<"Yes "<<ans.size()<<endl;
            for( auto [ l , r ]:ans ){
                cout<<l<<" "<<r-l+1<<endl;
            }

            //cout<<pan( ans , nn )<<endl;
        }
    }
    else{
        cout<<"No"<<endl;
    }

}

signed main() {
    ios::sync_with_stdio( 0 );
    cin.tie( 0 ); cout.tie( 0 );

    int T=1;
    cin>>T;

    while( T-- ){
        solve();
    }

    return 0;
}

詳細信息

Test #1:

score: 100
Accepted
time: 0ms
memory: 3508kb

input:

4
>>->>>
>>>->
>>>>>
>->>>>>>

output:

Yes 3
2 5
1 5
2 5
No
No
Yes 5
4 5
3 5
2 5
1 5
1 5

result:

ok ok (4 test cases)

Test #2:

score: 0
Accepted
time: 0ms
memory: 3576kb

input:

126
>->-->>>>
>--->->>>>
>--->-->>>
>>-->->>>
>>-->>>>>
>>->->>>>
>>->>->>>>
>-->->->>>
>->->>>>>>
>->>>
>->->>>>>
>>>->->>>
>>->>>>>>>
>>>>>->>>
>->>>->>>
>>--->->>>
>>->>>>
>->>>>->>>
>>>>-->>>
>---->>>
>>>---->>>
>>>>->>>>
>->>-->>>
>-->-->>>>
>>---->>>
>>--->>>
>->>>-->>>
>>-->>>>
>>---->>>>
>>-...

output:

Yes 4
5 5
4 5
1 5
3 6
Yes 4
6 5
5 5
1 7
5 5
Yes 3
6 5
1 7
5 6
Yes 4
5 5
1 5
2 6
5 5
Yes 5
5 5
4 5
3 5
1 5
2 6
Yes 5
5 5
4 5
1 5
2 5
4 5
Yes 6
6 5
5 5
1 5
2 5
4 5
5 5
Yes 4
6 5
1 6
4 5
6 5
Yes 6
6 5
5 5
4 5
3 5
1 5
3 5
Yes 2
1 5
1 5
Yes 5
5 5
4 5
3 5
1 5
3 5
Yes 5
5 5
1 5
2 5
3 5
5 5
Yes 7
6 5
5 5
4 ...

result:

ok ok (126 test cases)

Test #3:

score: 0
Accepted
time: 3ms
memory: 3620kb

input:

4032
>>--->>>>>>>>
>->>->->-->->>>
>>--->>--->>>
>>->->->>>>>>>>
>->---->->>>
>->>->>---->>>>
>>>>>>>>->>>>
>->>>--->>>->>>
>->>->>-->>>>>>
>->>-->---->>>
>-->--->>>->>>
>->---->>-->>>>
>>------>>>
>>>-->>--->>>>>
>->->->>-->>>>
>->->-->>->->>>
>>->>>>-->->>>>
>>>-->>->--->>>
>->->>>>>->>>>
>>-->->>...

output:

Yes 8
9 5
8 5
7 5
6 5
5 5
4 5
1 5
2 7
Yes 7
11 5
1 5
3 5
4 5
6 5
8 6
11 5
Yes 5
9 5
1 5
2 7
6 5
7 7
Yes 10
11 5
10 5
9 5
8 5
7 5
6 5
1 5
2 5
4 5
6 5
Yes 4
8 5
1 5
3 8
8 5
Yes 7
11 5
10 5
1 5
3 5
4 5
6 5
7 8
Yes 10
9 5
8 5
1 5
2 5
3 5
4 5
5 5
6 5
7 5
8 5
Yes 8
11 5
1 5
3 5
4 5
5 7
9 5
10 5
11 5
Yes 9...

result:

ok ok (4032 test cases)

Test #4:

score: 0
Accepted
time: 10ms
memory: 3836kb

input:

10000
>>>>->->>->>->>>>
>->-->>->>->>>>>>
>->->>-->--->>>>>
>---->-->->>>>>>>
>->-->>--->>->>>>
>->>->>>>>>-->>>
>>--->->-->>->>>
>-->---->>>->>>
>->----->->->>>>>
>>--->---->-->>>>
>>-->->->--->>>
>----->>-->>->>>>
>-->->->>>>>->>>>
>>->>---->-->>>
>>->>-->>>-->>>
>------>->>>->>>>
>->->-->->>>->>>...

output:

Yes 11
13 5
12 5
1 5
2 5
3 5
4 5
6 5
8 5
9 5
11 5
12 5
Yes 10
13 5
12 5
11 5
10 5
1 5
3 6
6 5
7 5
9 5
10 5
Yes 8
13 5
12 5
11 5
1 5
3 5
5 5
6 6
9 7
Yes 8
13 5
12 5
11 5
10 5
9 5
1 8
6 6
9 5
Yes 8
13 5
12 5
1 5
3 6
6 5
7 7
11 5
12 5
Yes 10
12 5
1 5
3 5
4 5
6 5
7 5
8 5
9 5
10 5
11 6
Yes 7
12 5
1 5
2 7...

result:

ok ok (10000 test cases)

Test #5:

score: 0
Accepted
time: 13ms
memory: 3656kb

input:

10000
>>>-->>>>-->---->->->-->>>
>>-->>>>->-->>->>>
>->-->--->--->->-->>--->>->->>-->->->>>>>>->>>>----->->--->>----->>-->>>----->->->>>--->>->>-->->->->---->>->>>-->>->->>>->->>>>->>->->>-->>>->>->>-->>>>-->>-->>>->>->->>>--->>>-->>>--->>->->>>>>->->---->>>>->>>
->->>>>--->>>>>>->>>->>>>->->-->-->>...

output:

Yes 12
22 5
1 5
2 5
3 6
6 5
7 5
8 5
9 6
12 8
17 5
19 5
21 6
Yes 10
14 5
1 5
2 6
5 5
6 5
7 5
8 5
10 6
13 5
14 5
Yes 111
207 5
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 ...

result:

ok ok (10000 test cases)

Test #6:

score: 0
Accepted
time: 10ms
memory: 3576kb

input:

9999
->->--->>>>->->--->>--
->>>--->>>-->>--->>---
-->>>>>>>-
>>>->>>>>>>--
>>-->-->->----->->>>>->>->---->->
>-->->>>--->->->>->->-
>->--->--->>>>->>>----->------>>-->->>>
>>->>>->>>---->>>->>>>>>>>>->--->>->>>>>-->>>->->->>-->->--->->-->->>->->->>-->-->>>>>>>>--->>--->->>>-->->----->>-->->>--->-->...

output:

No
No
No
No
No
No
Yes 15
35 5
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 70
125 5
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
6...

result:

ok ok (9999 test cases)

Test #7:

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

input:

5
>-->>>>>--->->->>->>>>>->->-->-->->>>-->->--->>>------>->>-->>>------->>---->-->>>>>>-->>--->>-->->->>>>->-->------>>->>>>->>>-->---->--->>-->-->->--->->->->->>->-->->--->>>>->>->--->->>-->>>>>>->>>>->>--->->>-->>->->---->>>->->>->>->--->->->-->->>->->-->->------>>>->>>>>->>-->>->>>->>>>>----->---...

output:

No
No
Yes 48172
95944 5
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 ...

result:

ok ok (5 test cases)

Test #8:

score: 0
Accepted
time: 18ms
memory: 7072kb

input:

5
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>...

output:

No
Yes 99997
99996 5
99995 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
...

result:

ok ok (5 test cases)

Test #9:

score: 0
Accepted
time: 16ms
memory: 4412kb

input:

20
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>...

output:

Yes 24995
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: 22ms
memory: 4196kb

input:

20
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>...

output:

Yes 24997
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