QOJ.ac
QOJ
ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#709337 | #9535. Arrow a Row | jty233# | AC ✓ | 17ms | 4180kb | C++23 | 1.7kb | 2024-11-04 14:03:16 | 2024-11-04 14:03:41 |
Judging History
answer
#include <bits/stdc++.h>
using namespace std;
using ll = long long;
int main()
{
ios::sync_with_stdio(false);
cin.tie(0);
int T; cin >> T;
while(T--){
string s; cin >> s;
int n = s.size();
if(s[0] == '-' || s[n-1] == '-' || s[n-2] == '-' || s[n-3] == '-'){
cout << "No\n";
continue;
}
int j = n-1;
while(j && s[j] != '-') j--;
if(s[j] != '-'){
cout << "No\n";
continue;
}
cout << "Yes ";
deque<pair<int, int>> ans;
string t(n, '*');
auto update = [&](auto&p){
return ;
auto[l, r] = p;
for(int i=l; i<=r; i++){
if(i == l || i >= r-2){
t[i] = '>';
}else{
t[i] = '-';
}
}
};
for(int i=j; i<n; i+=3){
ans.emplace_front(0, min(n-1, i+3));
update(ans.front());
}
for(int i=0; i<j; i++){
int k = i+1;
if(s[k] != '-'){
ans.emplace_back(i, j+3);
update(ans.back());
}else{
while(k <= j && s[k+1] == '-') k++;
ans.emplace_back(i, k+3);
update(ans.back());
i = k;
}
}
// if(t != s){
// cerr << "FUCK: " << t << endl;
// *(int*)nullptr = false;
// }
cout << ans.size() << '\n';
for(auto[l, r] : ans){
cout << l + 1 << ' ' << (r - l + 1) << '\n';
// cout << l + 1 << ' ' << r + 1 << '\n';
}
}
return 0;
}
詳細信息
Test #1:
score: 100
Accepted
time: 0ms
memory: 3544kb
input:
4 >>->>> >>>-> >>>>> >->>>>>>
output:
Yes 4 1 6 1 6 1 6 2 5 No No Yes 4 1 8 1 8 1 5 1 5
result:
ok ok (4 test cases)
Test #2:
score: 0
Accepted
time: 0ms
memory: 3524kb
input:
126 >->-->>>> >--->->>>> >--->-->>> >>-->->>> >>-->>>>> >>->->>>> >>->>->>>> >-->->->>> >->->>>>>> >->>> >->->>>>> >>>->->>> >>->>>>>>> >>>>>->>> >->>>->>> >>--->->>> >>->>>> >->>>>->>> >>>>-->>> >---->>> >>>---->>> >>>>->>>> >->>-->>> >-->-->>>> >>---->>> >>--->>> >->>>-->>> >>-->>>> >>---->>>> >>-...
output:
Yes 4 1 9 1 8 1 5 3 6 Yes 4 1 10 1 9 1 7 5 5 Yes 4 1 10 1 10 1 7 5 6 Yes 5 1 9 1 9 1 9 2 6 5 5 Yes 4 1 9 1 7 1 7 2 6 Yes 5 1 9 1 8 1 8 2 5 4 5 Yes 6 1 10 1 9 1 9 2 5 4 6 5 5 Yes 5 1 10 1 10 1 6 4 5 6 5 Yes 5 1 10 1 10 1 7 1 5 3 5 Yes 3 1 5 1 5 1 5 Yes 4 1 9 1 7 1 5 3 5 Yes 6 1 9 1 9 1 9 2 8 3 5 5 5 ...
result:
ok ok (126 test cases)
Test #3:
score: 0
Accepted
time: 3ms
memory: 3488kb
input:
4032 >>--->>>>>>>> >->>->->-->->>> >>--->>--->>> >>->->->>>>>>>> >->---->->>> >->>->>---->>>> >>>>>>>>->>>> >->>>--->>>->>> >->>->>-->>>>>> >->>-->---->>> >-->--->>>->>> >->---->>-->>>> >>------>>> >>>-->>--->>>>> >->->->>-->>>> >->->-->>->->>> >>->>>>-->->>>> >>>-->>->--->>> >->->>>>>->>>> >>-->->>...
output:
Yes 5 1 13 1 11 1 8 1 8 2 7 Yes 8 1 15 1 15 1 5 3 13 4 5 6 5 8 6 11 5 Yes 6 1 13 1 13 1 13 2 7 6 8 7 7 Yes 7 1 15 1 13 1 10 1 10 2 5 4 5 6 5 Yes 5 1 12 1 12 1 5 3 8 8 5 Yes 7 1 15 1 14 1 5 3 12 4 5 6 9 7 8 Yes 10 1 13 1 12 1 12 2 11 3 10 4 9 5 8 6 7 7 6 8 5 Yes 9 1 15 1 15 1 5 3 13 4 12 5 7 9 7 10 6...
result:
ok ok (4032 test cases)
Test #4:
score: 0
Accepted
time: 9ms
memory: 3552kb
input:
10000 >>>>->->>->>->>>> >->-->>->>->>>>>> >->->>-->--->>>>> >---->-->->>>>>>> >->-->>--->>->>>> >->>->>>>>>-->>> >>--->->-->>->>> >-->---->>>->>> >->----->->->>>>> >>--->---->-->>>> >>-->->->--->>> >----->>-->>->>>> >-->->->>>>>->>>> >>->>---->-->>> >>->>-->>>-->>> >------>->>>->>>> >->->-->->>>->>>...
output:
Yes 11 1 17 1 16 1 16 2 15 3 14 4 5 6 5 8 9 9 5 11 6 12 5 Yes 9 1 17 1 17 1 14 1 5 3 6 6 9 7 5 9 6 10 5 Yes 7 1 17 1 15 1 5 3 5 5 11 6 6 9 7 Yes 6 1 17 1 16 1 13 1 8 6 6 9 5 Yes 8 1 17 1 16 1 5 3 6 6 11 7 7 11 6 12 5 Yes 11 1 16 1 16 1 5 3 14 4 5 6 11 7 10 8 9 9 8 10 7 11 6 Yes 8 1 16 1 16 1 16 2 7 ...
result:
ok ok (10000 test cases)
Test #5:
score: 0
Accepted
time: 9ms
memory: 3552kb
input:
10000 >>>-->>>>-->---->->->-->>> >>-->>>>->-->>->>> >->-->--->--->->-->>--->>->->>-->->->>>>>>->>>>----->->--->>----->>-->>>----->->->>>--->>->>-->->->->---->>->>>-->>->->>>->->>>>->>->->>-->>>->>->>-->>>>-->>-->>>->>->->>>--->>>-->>>--->>->->>>>>->->---->>>>->>> ->->>>>--->>>>>>->>>->>>>->->-->-->>...
output:
Yes 13 1 26 1 26 1 26 2 25 3 6 6 21 7 20 8 19 9 6 12 8 17 5 19 5 21 6 Yes 11 1 18 1 18 1 18 2 6 5 14 6 13 7 12 8 5 10 6 13 6 14 5 Yes 112 1 211 1 211 1 5 3 6 6 7 10 7 14 5 16 6 19 193 20 7 24 188 25 5 27 5 29 183 30 6 33 5 35 5 37 175 38 174 39 173 40 172 41 171 42 5 44 168 45 167 46 166 47 9 53 5 5...
result:
ok ok (10000 test cases)
Test #6:
score: 0
Accepted
time: 13ms
memory: 3616kb
input:
9999 ->->--->>>>->->--->>-- ->>>--->>>-->>--->>--- -->>>>>>>- >>>->>>>>>>-- >>-->-->->----->->>>>->>->---->-> >-->->>>--->->->>->->- >->--->--->>>>->>>----->------>>-->->>> >>->>>->>>---->>>->>>>>>>>>->--->>->>>>>-->>>->->->>-->->--->->-->->>->->->>-->-->>>>>>>>--->>--->->>>-->->----->>-->->>--->-->...
output:
No No No No No No Yes 16 1 39 1 39 1 5 3 7 7 7 11 29 12 28 13 27 14 5 16 24 17 23 18 9 24 10 31 9 32 6 35 5 Yes 71 1 129 1 129 1 129 2 5 4 126 5 125 6 5 8 122 9 121 10 8 15 115 16 114 17 5 19 111 20 110 21 109 22 108 23 107 24 106 25 105 26 104 27 5 29 7 33 97 34 5 36 94 37 93 38 92 39 91 40 6 43 87...
result:
ok ok (9999 test cases)
Test #7:
score: 0
Accepted
time: 11ms
memory: 3892kb
input:
5 >-->>>>>--->->->>->>>>>->->-->-->->>>-->->--->>>------>->>-->>>------->>---->-->>>>>>-->>--->>-->->->>>>->-->------>>->>>>->>>-->---->--->>-->-->->--->->->->->>->-->->--->>>>->>->--->->>-->>>>>>->>>>->>--->->>-->>->->---->>>->->>->>->--->->->-->->>->->-->->------>>>->>>>>->>-->>->>>->>>>>----->---...
output:
No No Yes 48173 1 95948 1 95948 1 95948 2 95947 3 5 5 95944 6 95943 7 5 9 95940 10 5 12 8 17 95932 18 95931 19 95930 20 5 22 95927 23 95926 24 5 26 95923 27 95922 28 5 30 6 33 95916 34 5 36 95913 37 5 39 95910 40 95909 41 95908 42 5 44 95905 45 95904 46 95903 47 7 51 6 54 9 60 95889 61 95888 62 9588...
result:
ok ok (5 test cases)
Test #8:
score: 0
Accepted
time: 16ms
memory: 4180kb
input:
5 >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>...
output:
No Yes 99997 1 100000 1 99999 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 ...
result:
ok ok (5 test cases)
Test #9:
score: 0
Accepted
time: 14ms
memory: 3752kb
input:
20 >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>...
output:
Yes 21000 1 25000 1 24998 1 24995 1 24992 1 24989 1 24986 1 24983 1 24980 1 24977 1 24974 1 24971 1 24968 1 24965 1 24962 1 24959 1 24956 1 24953 1 24950 1 24947 1 24944 1 24941 1 24938 1 24935 1 24932 1 24929 1 24926 1 24923 1 24920 1 24917 1 24914 1 24911 1 24908 1 24905 1 24902 1 24899 1 24896 1 ...
result:
ok ok (20 test cases)
Test #10:
score: 0
Accepted
time: 17ms
memory: 3816kb
input:
20 >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>...
output:
Yes 9852 1 25000 1 24998 1 24995 1 24992 1 24989 1 24986 1 24983 1 24980 1 24977 1 24974 1 24971 1 24968 1 24965 1 24962 1 24959 1 24956 1 24953 1 24950 1 24947 1 24944 1 24941 1 24938 1 24935 1 24932 1 24929 1 24926 1 24923 1 24920 1 24917 1 24914 1 24911 1 24908 1 24905 1 24902 1 24899 1 24896 1 2...
result:
ok ok (20 test cases)
Extra Test:
score: 0
Extra Test Passed