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){
 
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
#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
AC × 1
AC × 56
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


2025-05-05 (Mon)
19:42:10 +09:00