Submission details
Task:Leimasin
Sender:MojoLake
Submission time:2025-09-27 13:54:29 +0300
Language:C++ (C++20)
Status:READY
Result:100
Feedback
groupverdictscore
#1ACCEPTED33
#2ACCEPTED43
#3ACCEPTED24
Test results
testverdicttimegroup
#1ACCEPTED0.00 s1, 2, 3details
#2ACCEPTED0.00 s1, 2, 3details
#3ACCEPTED0.00 s1, 2, 3details
#4ACCEPTED0.00 s1, 2, 3details
#5ACCEPTED0.01 s2, 3details
#6ACCEPTED0.01 s2, 3details
#7ACCEPTED0.01 s2, 3details
#8ACCEPTED0.01 s2, 3details
#9ACCEPTED0.34 s3details
#10ACCEPTED0.42 s3details
#11ACCEPTED0.55 s3details
#12ACCEPTED0.66 s3details
#13ACCEPTED0.95 s3details
#14ACCEPTED0.38 s3details

Code

#include <bits/stdc++.h>

#define all(x) begin(x), end(x)
#define sz(x) (int)(x).size()

using namespace std;
using ll = long long;

const int inf = 1e9;
const ll LLinf = 1e18;


int main() {
    cin.tie(0)->sync_with_stdio(0);
    int n, m, k;
    cin >> n >> m >> k;
    string s;
    cin >> s;

    vector<vector<int>> places(n + 1);
    vector<int> p(k);
    vector<int> op(n);

    for (int t = 0; t < k; ++t) {
        cin >> p[t];
        p[t]--;
        op[p[t]] = t;
        places[p[t]].push_back(t);
        places[p[t] + m].push_back(t);
    }

    vector<char> ans(n);
    set<int> active;

    for (int i = 0; i < n; ++i) {
        for (int x : places[i]) {
            if (active.count(x)) {
                active.erase(x);
            } else {
                active.insert(x);
            }
        }

        if (active.empty()) {
            ans[i] = '.';
        } else {
            int mx = *active.rbegin();
            // mx is some t
            // and we now p[t]
            // s[i - p[t]]
            ans[i] = s[i - p[mx]];
        }
    }

    for (char c : ans) {
        cout << c;
    }
    cout << "\n";
}

Test details

Test 1

Group: 1, 2, 3

Verdict: ACCEPTED

input
1000 1 100
a
585 600 750 170 794 845 341 39...

correct output
............a....aa..............

user output
............a....aa..............

Test 2

Group: 1, 2, 3

Verdict: ACCEPTED

input
1000 4 100
zhrb
795 569 744 662 315 869 913 21...

correct output
.........................zhrb....

user output
.........................zhrb....

Test 3

Group: 1, 2, 3

Verdict: ACCEPTED

input
1000 100 100
wkmtgzytnfwptwukbartgunjyrkyml...

correct output
wkmtgzywkmtgzytnfwptwukbartgun...

user output
wkmtgzywkmtgzytnfwptwukbartgun...

Test 4

Group: 1, 2, 3

Verdict: ACCEPTED

input
1000 1000 100
njplbyvkaytbcyzbylzntnmpfapvfg...

correct output
njplbyvkaytbcyzbylzntnmpfapvfg...

user output
njplbyvkaytbcyzbylzntnmpfapvfg...

Test 5

Group: 2, 3

Verdict: ACCEPTED

input
100000 1 1000
a
61541 4948 46214 29629 8779 76...

correct output
.................................

user output
.................................

Test 6

Group: 2, 3

Verdict: ACCEPTED

input
100000 10 1000
ntsconpqnv
17118 69319 2115 8873 892 9994...

correct output
.....................ntsconpqn...

user output
.....................ntsconpqn...

Test 7

Group: 2, 3

Verdict: ACCEPTED

input
100000 10000 1000
wcyeepjmmvavmoncfxclqrsebjzwbf...

correct output
.................................

user output
.................................

Test 8

Group: 2, 3

Verdict: ACCEPTED

input
100000 100000 1000
chdcxwwznawllrxcxlckeziomcsjhc...

correct output
chdcxwwznawllrxcxlckeziomcsjhc...

user output
chdcxwwznawllrxcxlckeziomcsjhc...

Test 9

Group: 3

Verdict: ACCEPTED

input
1000000 1 500000
a
406018 635983 429225 943593 90...

correct output
.a...aa.....a.aaaa.a.aaa..aa.a...

user output
.a...aa.....a.aaaa.a.aaa..aa.a...

Test 10

Group: 3

Verdict: ACCEPTED

input
1000000 10 500000
frvhrhlrxi
85148 459715 677814 98302 4081...

correct output
frvhfrvhrhlrxihrhlrxifrvhrfrvf...

user output
frvhfrvhrhlrxihrhlrxifrvhrfrvf...

Test 11

Group: 3

Verdict: ACCEPTED

input
1000000 1000 500000
hklmkntjqgilackgurwlerwvvfjwwr...

correct output
.hklhklmkntjqgilackgurwlerwvvf...

user output
.hklhklmkntjqgilackgurwlerwvvf...

Test 12

Group: 3

Verdict: ACCEPTED

input
1000000 10000 500000
yxajftmelgwiofcugtrvcltdemhyuu...

correct output
yxajftyxayxajftmelgwiofcugtrvc...

user output
yxajftyxayxajftmelgwiofcugtrvc...

Test 13

Group: 3

Verdict: ACCEPTED

input
1000000 100000 500000
yyzteckvutdnprlklyxgenyqpznght...

correct output
.yyyyzteckvutdnpryyzteckvutdnp...

user output
.yyyyzteckvutdnpryyzteckvutdnp...

Test 14

Group: 3

Verdict: ACCEPTED

input
1000000 1000000 500000
hhgvveiosloznsihxtccfjbizayyhl...

correct output
hhgvveiosloznsihxtccfjbizayyhl...

user output
hhgvveiosloznsihxtccfjbizayyhl...