Submission #65503330
Source Code Expand
Copy
#include <bits/stdc++.h>using namespace std;using ll = long long;int main(){ios::sync_with_stdio(false);cin.tie(nullptr);int T;cin >> T;while(T--){ll H, W;string S;cin >> H >> W >> S;ll N = H + W - 2;ll Dtot = 0, Qtot = 0;for(char c: S){if(c=='D') Dtot++;else if(c=='?') Qtot++;}ll U = (H - 1) - Dtot;if(U < 0 || U > Qtot){
#include <bits/stdc++.h>
using namespace std;
using ll = long long;
int main(){
ios::sync_with_stdio(false);
cin.tie(nullptr);
int T;
cin >> T;
while(T--){
ll H, W;
string S;
cin >> H >> W >> S;
ll N = H + W - 2;
ll Dtot = 0, Qtot = 0;
for(char c: S){
if(c=='D') Dtot++;
else if(c=='?') Qtot++;
}
ll U = (H - 1) - Dtot;
if(U < 0 || U > Qtot){
cout << 0 << "\n";
continue;
}
vector<ll> preD(N+1,0), preQ(N+1,0);
for(int i = 0; i < N; i++){
preD[i+1] = preD[i] + (S[i] == 'D');
preQ[i+1] = preQ[i] + (S[i] == '?');
}
ll ans = 0;
for(ll i = 0; i <= N; i++){
ll sufQ = Qtot - preQ[i];
ll low = preD[i] + max(0LL, U - sufQ);
low = max(low, i - (W - 1));
ll high = preD[i] + min(preQ[i], U);
if(low <= high){
ans += high - low + 1;
}
}
cout << ans << "\n";
}
return 0;
}
Submission Info
| Submission Time | |
|---|---|
| Task | A - Union of Grid Paths |
| User | OYU__0YU |
| Language | C++ 20 (gcc 12.2) |
| Score | 400 |
| Code Size | 1131 Byte |
| Status | AC |
| Exec Time | 10 ms |
| Memory | 10056 KB |
Judge Result
| Set Name | Sample | All | ||||
|---|---|---|---|---|---|---|
| Score / Max Score | 0 / 0 | 400 / 400 | ||||
| Status |
|
|
| Set Name | Test Cases |
|---|---|
| Sample | 01_sample_01.txt |
| All | 01_sample_01.txt, 02_small_01.txt, 02_small_02.txt, 02_small_03.txt, 02_small_04.txt, 02_small_05.txt, 02_small_06.txt, 02_small_07.txt, 02_small_08.txt, 02_small_09.txt, 02_small_10.txt, 03_mid_01.txt, 03_mid_02.txt, 03_mid_03.txt, 03_mid_04.txt, 03_mid_05.txt, 04_max_01.txt, 04_max_02.txt, 04_max_03.txt, 04_max_04.txt, 04_max_05.txt, 04_max_06.txt, 04_max_07.txt, 04_max_08.txt, 04_max_09.txt, 04_max_10.txt, 04_max_11.txt, 04_max_12.txt, 04_max_13.txt, 04_max_14.txt, 04_max_15.txt, 04_max_16.txt, 04_max_17.txt, 04_max_18.txt, 04_max_19.txt, 04_max_20.txt, 04_max_21.txt, 04_max_22.txt, 04_max_23.txt, 04_max_24.txt, 04_max_25.txt, 04_max_26.txt, 04_max_27.txt, 04_max_28.txt, 04_max_29.txt, 04_max_30.txt, 04_max_31.txt, 04_max_32.txt, 04_max_33.txt, 04_max_34.txt, 04_max_35.txt, 04_max_36.txt, 04_max_37.txt, 04_max_38.txt, 04_max_39.txt, 04_max_40.txt |
| Case Name | Status | Exec Time | Memory |
|---|---|---|---|
| 01_sample_01.txt | AC | 1 ms | 3512 KB |
| 02_small_01.txt | AC | 9 ms | 3440 KB |
| 02_small_02.txt | AC | 9 ms | 3452 KB |
| 02_small_03.txt | AC | 9 ms | 3452 KB |
| 02_small_04.txt | AC | 9 ms | 3520 KB |
| 02_small_05.txt | AC | 9 ms | 3512 KB |
| 02_small_06.txt | AC | 9 ms | 3516 KB |
| 02_small_07.txt | AC | 9 ms | 3516 KB |
| 02_small_08.txt | AC | 10 ms | 3524 KB |
| 02_small_09.txt | AC | 9 ms | 3572 KB |
| 02_small_10.txt | AC | 9 ms | 3516 KB |
| 03_mid_01.txt | AC | 3 ms | 3568 KB |
| 03_mid_02.txt | AC | 3 ms | 3568 KB |
| 03_mid_03.txt | AC | 3 ms | 3584 KB |
| 03_mid_04.txt | AC | 3 ms | 3580 KB |
| 03_mid_05.txt | AC | 3 ms | 3480 KB |
| 04_max_01.txt | AC | 5 ms | 9900 KB |
| 04_max_02.txt | AC | 5 ms | 9864 KB |
| 04_max_03.txt | AC | 5 ms | 9912 KB |
| 04_max_04.txt | AC | 6 ms | 9936 KB |
| 04_max_05.txt | AC | 5 ms | 10012 KB |
| 04_max_06.txt | AC | 6 ms | 9900 KB |
| 04_max_07.txt | AC | 5 ms | 10048 KB |
| 04_max_08.txt | AC | 6 ms | 9880 KB |
| 04_max_09.txt | AC | 7 ms | 10056 KB |
| 04_max_10.txt | AC | 7 ms | 9896 KB |
| 04_max_11.txt | AC | 5 ms | 9964 KB |
| 04_max_12.txt | AC | 5 ms | 9808 KB |
| 04_max_13.txt | AC | 6 ms | 9956 KB |
| 04_max_14.txt | AC | 6 ms | 9908 KB |
| 04_max_15.txt | AC | 6 ms | 9908 KB |
| 04_max_16.txt | AC | 5 ms | 10032 KB |
| 04_max_17.txt | AC | 5 ms | 9968 KB |
| 04_max_18.txt | AC | 6 ms | 9916 KB |
| 04_max_19.txt | AC | 6 ms | 9932 KB |
| 04_max_20.txt | AC | 6 ms | 9940 KB |
| 04_max_21.txt | AC | 7 ms | 9924 KB |
| 04_max_22.txt | AC | 7 ms | 9856 KB |
| 04_max_23.txt | AC | 6 ms | 9992 KB |
| 04_max_24.txt | AC | 6 ms | 9892 KB |
| 04_max_25.txt | AC | 5 ms | 9924 KB |
| 04_max_26.txt | AC | 6 ms | 9980 KB |
| 04_max_27.txt | AC | 6 ms | 9852 KB |
| 04_max_28.txt | AC | 6 ms | 10004 KB |
| 04_max_29.txt | AC | 6 ms | 9964 KB |
| 04_max_30.txt | AC | 5 ms | 10032 KB |
| 04_max_31.txt | AC | 6 ms | 10004 KB |
| 04_max_32.txt | AC | 6 ms | 9804 KB |
| 04_max_33.txt | AC | 7 ms | 9984 KB |
| 04_max_34.txt | AC | 6 ms | 9952 KB |
| 04_max_35.txt | AC | 5 ms | 9908 KB |
| 04_max_36.txt | AC | 5 ms | 9964 KB |
| 04_max_37.txt | AC | 7 ms | 9924 KB |
| 04_max_38.txt | AC | 7 ms | 10044 KB |
| 04_max_39.txt | AC | 6 ms | 9996 KB |
| 04_max_40.txt | AC | 6 ms | 9988 KB |