QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#732023#9535. Arrow a RowvotienkhoaAC ✓32ms7108kbC++172.4kb2024-11-10 12:45:352024-11-10 12:45:35

Judging History

This is the latest submission verdict.

  • [2024-11-10 12:45:35]
  • Judged
  • Verdict: AC
  • Time: 32ms
  • Memory: 7108kb
  • [2024-11-10 12:45:35]
  • Submitted

answer

#include<bits/stdc++.h>
using namespace std;

#define int long long
#define double long double
#define endl "\n"
typedef map<int,int> mii;
typedef vector<int> vi;
typedef vector<vi> vvi;
typedef vector<pair<int,int>> vpii;
typedef vector<pair<pair<int,int>,int>> vpiii;

#define that ios_base::sync_with_stdio(false);
#define summer "or maybe fall?"; 
#define I cin.tie(NULL);
#define had "just a thing of the past";
#define you cout.tie(NULL);

#define dbg(x)		cout << #x << " = " << x << endl;
#define vdbg(v)     for(auto x : v) cout << x.fi << " "; cout << endl; for(auto x : v) cout << x.se << " "; cout << endl;
#define in(a)		for (auto &x : (a)) cin >> x
#define all(a)		(a).begin(), (a).end()
#define rall(a) 	(a).rbegin(), (a).rend()
#define For(i,a,b)	for(int i=a; i<b; i++)
#define Fora(i,a,b)	for(int i=a; i<=b; i++)
#define Fore(i,a,b)	for(int i=b; i>=a; i--)

#define fi first
#define se second
#define pb push_back
#define mp make_pair
#define unmap unordered_map
#define pq priority_queue

const int N = 2e5 + 1;
const int mod = 1e9 + 7;

void solve() {
	string s; cin >> s;
    int sz = s.length();
    if (s[0] != '>' || s.substr(sz-3,3) != ">>>"){
        cout << "No" << endl;
        return;
    }
    vi pos;
    For(i,0,sz){
        if (s[i] == '-') pos.pb(i);
    }
    if (pos.size() == 0){
        cout << "No" << endl;
        return;
    }
    
    vpii res;
    int fst = pos[0];
    int lst = pos[pos.size()-1];

    for(int i = sz-1; i>=4; i--){
        if (s[i-3] != '-'){
            res.pb({i+1-4, 5});
        }
        else break;
    }
    For(i,0,lst){
        if (s[i] == '>' && s[i+1] == '-'){
            int cnt = 0;
            int ori = i;
            while(s[i+1] == '-'){
                cnt++;
                i++;
            }
            // i--;
            // dbg(cnt);

            res.pb({ori+1, 4+cnt});
        }
        if (s[i] == '>'){
            res.pb({i+1, 5});
        }
        else continue;
    }
    cout << "Yes" << " " << res.size() << endl;
    for(auto x : res){
        cout << x.fi << " " << x.se << endl;
    }
}	

signed main(){
    //that summer I had you

    if(fopen("banhmi.txt", "r")){
        freopen("banhmi.txt", "r", stdin);  
        freopen( "banhbao.txt", "w", stdout);
    }
    int t; cin >> t;
    while(t--) solve();
}

Details

Tip: Click on the bar to expand more detailed information

Test #1:

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

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: 1ms
memory: 3508kb

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: 3792kb

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: 18ms
memory: 3768kb

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: 26ms
memory: 3588kb

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: 12ms
memory: 3776kb

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: 19ms
memory: 5412kb

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: 24ms
memory: 7108kb

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: 31ms
memory: 4116kb

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: 32ms
memory: 4044kb

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