Submission details
Task:Bittijono
Sender:zli0122
Submission time:2026-01-17 16:02:10 +0200
Language:C++ (C++11)
Status:READY
Result:100
Feedback
groupverdictscore
#1ACCEPTED21
#2ACCEPTED16
#3ACCEPTED63
Test results
testverdicttimegroup
#1ACCEPTED0.01 s1, 3details
#2ACCEPTED0.01 s1, 2, 3details
#3ACCEPTED0.01 s1, 3details
#4ACCEPTED0.01 s1, 3details
#5ACCEPTED0.01 s1, 3details
#6ACCEPTED0.01 s3details
#7ACCEPTED0.01 s2, 3details
#8ACCEPTED0.01 s3details
#9ACCEPTED0.01 s2, 3details
#10ACCEPTED0.01 s2, 3details
#11ACCEPTED0.01 s3details
#12ACCEPTED0.01 s2, 3details
#13ACCEPTED0.01 s3details
#14ACCEPTED0.01 s3details
#15ACCEPTED0.01 s3details
#16ACCEPTED0.01 s1, 2, 3details
#17ACCEPTED0.01 s1, 3details
#18ACCEPTED0.01 s1, 3details
#19ACCEPTED0.01 s3details
#20ACCEPTED0.01 s3details

Code

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

#define int long long
#define debug(x) cout << #x << ": " << (x) << " | "
#define Debug(x) cout << #x << ": " << (x) << "\n"

const int M = 100100;
const int INF = 1010101010;

void solve() {
    int n, a, b;
    cin >> n >> a >> b;
    a = min(a, b);

    bitset<M> s1, s2, s;
    cin >> s1 >> s2;

    s=s1 ^ s2;

    int dp[M]={}, dpb[M]={};

    int i=0;

    while (s[i]==0 && i<n) i++;
    if (i==n) {
        cout << 0 << "\n";
        return;
    }

    dp[i] = a;
    dpb[i] = b;
    for (i++; i<n; i++) {
        
        if (s[i]==1) {
            if (s[i-1]==1) dpb[i] = dpb[i-1];
            else dpb[i] = min(dp[i-1]+b, dpb[i-1]);
            
            dp[i] = min(dpb[i], dp[i-1]+a);
        } else {
            dpb[i] = min(dp[i-1]+b, dpb[i-1]+a);

            dp[i] = dp[i-1];
        }
    }

    cout << dp[n-1] << "\n";
    return;

    
}

signed main() {
    cin.tie(0) -> ios::sync_with_stdio(0);
    solve();
}

Test details

Test 1 (public)

Group: 1, 3

Verdict: ACCEPTED

input
8 3 5
10110001
01101000

correct output
11

user output
11

Test 2

Group: 1, 2, 3

Verdict: ACCEPTED

input
10 644 644
0111000100
0000010111

correct output
1932

user output
1932

Test 3

Group: 1, 3

Verdict: ACCEPTED

input
10 493 986
0001110000
0001100001

correct output
986

user output
986

Test 4

Group: 1, 3

Verdict: ACCEPTED

input
10 240 720
1011001110
1000000001

correct output
1200

user output
1200

Test 5

Group: 1, 3

Verdict: ACCEPTED

input
10 3 7
1110111111
0010010101

correct output
15

user output
15

Test 6

Group: 3

Verdict: ACCEPTED

input
100000 1 1000000000
001100110010101001010111000110...

correct output
50252

user output
50252

Test 7

Group: 2, 3

Verdict: ACCEPTED

input
100000 1000000000 1
110010000110110100110110101011...

correct output
25055

user output
25055

Test 8

Group: 3

Verdict: ACCEPTED

input
100000 1000 1000000000
001001101010100000011110000101...

correct output
50001000

user output
50001000

Test 9

Group: 2, 3

Verdict: ACCEPTED

input
100000 1000000000 1000
101010110001010011011011101110...

correct output
24939000

user output
24939000

Test 10

Group: 2, 3

Verdict: ACCEPTED

input
100000 1000000000 1000000000
001000000001000000000010110111...

correct output
25023000000000

user output
25023000000000

Test 11

Group: 3

Verdict: ACCEPTED

input
100000 123456789 987654321
100010110100011000001111001110...

correct output
5475678967593

user output
5475678967593

Test 12

Group: 2, 3

Verdict: ACCEPTED

input
100000 987654321 123456789
000100110000010110111101111101...

correct output
3071481453531

user output
3071481453531

Test 13

Group: 3

Verdict: ACCEPTED

input
100000 1000000 1000000000
001100110010100011000111101100...

correct output
49916000000

user output
49916000000

Test 14

Group: 3

Verdict: ACCEPTED

input
100000 10000000 1000000000
110111101101111110100101011000...

correct output
494930000000

user output
494930000000

Test 15

Group: 3

Verdict: ACCEPTED

input
100000 100000000 1000000000
111110000010100011011100110010...

correct output
4547300000000

user output
4547300000000

Test 16

Group: 1, 2, 3

Verdict: ACCEPTED

input
1 1 1
1
1

correct output
0

user output
0

Test 17

Group: 1, 3

Verdict: ACCEPTED

input
10 600 800
0000000000
1110111111

correct output
1400

user output
1400

Test 18

Group: 1, 3

Verdict: ACCEPTED

input
10 300 599
1101001010
0011010110

correct output
1198

user output
1198

Test 19

Group: 3

Verdict: ACCEPTED

input
100000 300000000 500000000
010011101001001010010101101101...

correct output
10000000000000

user output
10000000000000

Test 20

Group: 3

Verdict: ACCEPTED

input
100000 60000 1000000000
110110111011010100001000011011...

correct output
3000000000

user output
3000000000