QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#734532#9535. Arrow a Rowxly_tyty#AC ✓83ms7656kbC++231.1kb2024-11-11 12:14:062024-11-11 12:14:07

Judging History

This is the latest submission verdict.

  • [2024-11-11 12:14:07]
  • Judged
  • Verdict: AC
  • Time: 83ms
  • Memory: 7656kb
  • [2024-11-11 12:14:06]
  • Submitted

answer

#include<bits/stdc++.h>
#define int long long
using namespace std;
typedef pair<int,int> pii;
const int N=1e6+10;
int n,m,a,b,c;
string s;
void solve()
{
	cin>>s;
	n=s.size();
	s=" "+s;
	if(s[n]!='>'||s[n-1]!='>'||s[n-2]!='>')
	{
		cout<<"No"<<endl;return;
	}
	vector<pii>f;
	vector<pii>ans;
	if(s[1]=='-')
	{
		cout<<"No"<<endl;return;
	}
	for(int i=1;i<=n;i++)
	{
		int j=i;
		while(s[j+1]==s[i]&&j+1<=n)j++;
		f.push_back({i,j});
		//cout<<i<<' '<<j<<endl;
		i=j;
	}
	m=f.size();
	if(m==1)
	{
		cout<<"No"<<endl;return;
	}
	for(int i=0;i<f.size()-3;i+=2)
	{
		//cout<<"*"<<endl;
		int R=f[i+1].second;
		for(int j=f[i].first;j<=f[i].second;j++)ans.push_back({j,R+3});
	}
	int l1=f[m-3].first,r1=f[m-3].second;
	int l2=f[m-2].first,r2=f[m-2].second;
	int l3=f[m-1].first,r3=f[m-1].second;
	//cout<<l1<<' '<<r1<<' '<<l2<<' '<<r2<<' '<<l3<<' '<<r3<<endl;
	for(int i=r3;i>=l3+2;i--)ans.push_back({l1,i});
	for(int i=l1+1;i<=r1;i++)ans.push_back({i,l3+2});
	cout<<"Yes"<<' '<<ans.size()<<endl;
	for(auto x:ans)cout<<x.first<<' '<<x.second-x.first+1<<endl;
}
signed main()
{
	int T;cin>>T;
	while(T--)solve();
	return 0;
}

詳細信息

Test #1:

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

input:

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

output:

Yes 2
1 6
2 5
No
No
Yes 4
1 8
1 7
1 6
1 5

result:

ok ok (4 test cases)

Test #2:

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

input:

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

output:

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

result:

ok ok (126 test cases)

Test #3:

score: 0
Accepted
time: 11ms
memory: 3484kb

input:

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

output:

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

result:

ok ok (4032 test cases)

Test #4:

score: 0
Accepted
time: 23ms
memory: 3480kb

input:

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

output:

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

result:

ok ok (10000 test cases)

Test #5:

score: 0
Accepted
time: 39ms
memory: 3632kb

input:

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

output:

Yes 11
1 8
2 7
3 6
6 9
7 8
8 7
9 6
12 8
17 5
19 5
21 6
Yes 9
1 7
2 6
5 8
6 7
7 6
8 5
10 6
13 6
14 5
Yes 110
1 5
3 6
6 7
10 7
14 5
16 6
19 8
20 7
24 6
25 5
27 5
29 7
30 6
33 5
35 5
37 10
38 9
39 8
40 7
41 6
42 5
44 12
45 11
46 10
47 9
53 5
55 7
59 10
60 9
66 7
67 6
70 11
71 10
72 9
78 5
80 5
82 9
83 ...

result:

ok ok (10000 test cases)

Test #6:

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

input:

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

output:

No
No
No
No
No
No
Yes 14
1 5
3 7
7 7
11 8
12 7
13 6
14 5
16 11
17 10
18 9
24 10
31 7
32 6
35 5
Yes 69
1 6
2 5
4 7
5 6
6 5
8 10
9 9
10 8
15 7
16 6
17 5
19 13
20 12
21 11
22 10
23 9
24 8
25 7
26 6
27 5
29 7
33 6
34 5
36 10
37 9
38 8
39 7
40 6
43 7
44 6
45 5
47 5
49 5
51 7
52 6
55 5
57 7
61 5
63 6
66 5...

result:

ok ok (9999 test cases)

Test #7:

score: 0
Accepted
time: 15ms
memory: 6024kb

input:

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

output:

No
No
Yes 48171
1 7
2 6
3 5
5 7
6 6
7 5
9 6
10 5
12 8
17 8
18 7
19 6
20 5
22 7
23 6
24 5
26 7
27 6
28 5
30 6
33 6
34 5
36 6
37 5
39 8
40 7
41 6
42 5
44 10
45 9
46 8
47 7
51 6
54 9
60 9
61 8
62 7
63 6
64 5
66 8
67 7
68 6
71 7
72 6
73 5
75 9
76 8
77 7
81 9
82 8
83 7
87 7
88 6
91 5
93 9
94 8
99 9
100 8...

result:

ok ok (5 test cases)

Test #8:

score: 0
Accepted
time: 43ms
memory: 7656kb

input:

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

output:

No
Yes 99996
1 100000
1 99999
2 99998
3 99997
4 99996
5 99995
6 99994
7 99993
8 99992
9 99991
10 99990
11 99989
12 99988
13 99987
14 99986
15 99985
16 99984
17 99983
18 99982
19 99981
20 99980
21 99979
22 99978
23 99977
24 99976
25 99975
26 99974
27 99973
28 99972
29 99971
30 99970
31 99969
32 99968...

result:

ok ok (5 test cases)

Test #9:

score: 0
Accepted
time: 72ms
memory: 3956kb

input:

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

output:

Yes 24994
1 11298
2 11297
3 11296
4 11295
5 11294
6 11293
7 11292
8 11291
9 11290
10 11289
11 11288
12 11287
13 11286
14 11285
15 11284
16 11283
17 11282
18 11281
19 11280
20 11279
21 11278
22 11277
23 11276
24 11275
25 11274
26 11273
27 11272
28 11271
29 11270
30 11269
31 11268
32 11267
33 11266
34...

result:

ok ok (20 test cases)

Test #10:

score: 0
Accepted
time: 83ms
memory: 3940kb

input:

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

output:

Yes 24996
1 25000
1 24999
1 24998
1 24997
1 24996
1 24995
1 24994
1 24993
1 24992
1 24991
1 24990
1 24989
1 24988
1 24987
1 24986
1 24985
1 24984
1 24983
1 24982
1 24981
1 24980
1 24979
1 24978
1 24977
1 24976
1 24975
1 24974
1 24973
1 24972
1 24971
1 24970
1 24969
1 24968
1 24967
1 24966
1 24965
1 ...

result:

ok ok (20 test cases)

Extra Test:

score: 0
Extra Test Passed