Submission details
Task:Fused Folder
Sender:ollpu_kilo
Submission time:2018-09-13 18:57:32 +0300
Language:C++
Status:READY
Result:
Test results
testverdicttime
#1ACCEPTED0.01 sdetails
#2ACCEPTED0.01 sdetails
#3ACCEPTED0.01 sdetails
#4ACCEPTED0.03 sdetails
#5ACCEPTED0.02 sdetails
#6ACCEPTED0.01 sdetails
#7ACCEPTED0.02 sdetails
#8ACCEPTED0.02 sdetails
#9ACCEPTED0.01 sdetails
#10ACCEPTED0.01 sdetails
#11ACCEPTED1.29 sdetails
#12ACCEPTED1.21 sdetails
#13ACCEPTED0.06 sdetails
#14ACCEPTED0.37 sdetails
#15ACCEPTED0.53 sdetails
#16--details
#17--details
#18--details
#19--details
#20--details
#21--details
#22--details
#23--details
#24--details
#25--details
#26--details
#27--details
#28--details
#29ACCEPTED0.67 sdetails
#30ACCEPTED0.67 sdetails
#31--details
#32--details
#33ACCEPTED1.38 sdetails

Code

#pragma GCC optimize ("O3")
#pragma GCC target ("arch=skylake")
#include <bits/stdc++.h>
using namespace std;
int dp[2][25001];
int main() {
  ios::sync_with_stdio(0);
  cin.tie(0);
  int A, B, F;
  cin >> A >> B >> F;
  string a, b, f;
  cin >> a >> b >> f;
  for (int i = 0; i <= A; ++i) {
    int ci = i&1, li = ~i&1;
    for (int j = 0; j <= B; ++j) {
      if (i == 0 && j == 0) {
        dp[ci][j] = 0;
        continue;
      }
      int res = F+1;
      if (i && dp[li][j] < F) {
        res = min(res, dp[li][j]+(f[dp[li][j]] == a[i-1]));
      }
      if (j && dp[ci][j-1] < F) {
        res = min(res, dp[ci][j-1]+(f[dp[ci][j-1]] == b[j-1]));
      }
      if (i && j && a[i-1] == b[j-1] && dp[li][j-1] < F) {
        res = min(res, dp[li][j-1]+(f[dp[li][j-1]] == a[i-1]));
      }
      dp[ci][j] = res;
    }
  }
  cout << (dp[A&1][B] < F ? "YES" : "NO") << endl;
}

Test details

Test 1

Verdict: ACCEPTED

input
6 6 6
abbacc
bacbac
bbaacc

correct output
YES

user output
YES

Test 2

Verdict: ACCEPTED

input
3 3 2
aab
aba
ab

correct output
NO

user output
NO

Test 3

Verdict: ACCEPTED

input
2 1 1
nf
l
n

correct output
NO

user output
NO

Test 4

Verdict: ACCEPTED

input
8 2 3
fjnclbff
lg
dcc

correct output
YES

user output
YES

Test 5

Verdict: ACCEPTED

input
3 3 8
cca
bvs
iabhqblp

correct output
YES

user output
YES

Test 6

Verdict: ACCEPTED

input
5 7 4
fnefw
frbujda
sdsy

correct output
YES

user output
YES

Test 7

Verdict: ACCEPTED

input
10 10 4
aaaaaabbab
aabababbaa
babb

correct output
NO

user output
NO

Test 8

Verdict: ACCEPTED

input
6 7 1
fefgaa
ddbebbb
f

correct output
NO

user output
NO

Test 9

Verdict: ACCEPTED

input
10 3 1
afeglbeobc
onj
e

correct output
NO

user output
NO

Test 10

Verdict: ACCEPTED

input
3 6 3
aab
abbaab
aaa

correct output
NO

user output
NO

Test 11

Verdict: ACCEPTED

input
17639 10996 8710
idokahghjkldghkkiegdaopealioon...

correct output
YES

user output
YES

Test 12

Verdict: ACCEPTED

input
13616 19964 101
fffbfcffccabfeddddcfcbfcaeeedf...

correct output
NO

user output
NO

Test 13

Verdict: ACCEPTED

input
574 9006 730
jjbfvgcqlffbmsfaabnsstutmnvvsn...

correct output
YES

user output
YES

Test 14

Verdict: ACCEPTED

input
14601 4082 918
edjekbfklgklbcldkefecckifgifab...

correct output
NO

user output
NO

Test 15

Verdict: ACCEPTED

input
20842 3618 22126
cefagfddfecafccgdfbbafgadcdaab...

correct output
YES

user output
YES

Test 16

Verdict:

input
25000 25000 19987
bbaaaababbaabbbabbabbaabaaabba...

correct output
YES

user output
(empty)

Test 17

Verdict:

input
25000 25000 2654
aacbdadeacbcdccddedcdeecdaaecd...

correct output
NO

user output
(empty)

Test 18

Verdict:

input
25000 25000 21163
baabbabbaaaaabaabbabbbbbababaa...

correct output
YES

user output
(empty)

Test 19

Verdict:

input
25000 25000 807
iihklfjfdljejeeigibgkachiijkkd...

correct output
NO

user output
(empty)

Test 20

Verdict:

input
25000 25000 14673
nwmhuqbldgvcdmsjjnsvmsoabwhvch...

correct output
YES

user output
(empty)

Test 21

Verdict:

input
25000 25000 25000
abbacbbaabacccbbccabbcccabaacc...

correct output
YES

user output
(empty)

Test 22

Verdict:

input
25000 25000 25000
ebgcfecbbeabhdhcdcidcebiiccacb...

correct output
YES

user output
(empty)

Test 23

Verdict:

input
25000 25000 25000
jhcdfcjeicfaagagaidijihaghhhjd...

correct output
YES

user output
(empty)

Test 24

Verdict:

input
25000 25000 25000
bqrehnjncmasbsesfoonmqlojickqh...

correct output
NO

user output
(empty)

Test 25

Verdict:

input
25000 25000 25000
cdfafbafcddafabdddbabdcbafbfec...

correct output
NO

user output
(empty)

Test 26

Verdict:

input
25000 25000 25000
wmuwshejgvqtiqrhbewlulksnskqjf...

correct output
NO

user output
(empty)

Test 27

Verdict:

input
25000 25000 25000
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...

correct output
NO

user output
(empty)

Test 28

Verdict:

input
24999 24999 25000
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...

correct output
YES

user output
(empty)

Test 29

Verdict: ACCEPTED

input
10000 10000 10000
cjscerkmfabqallhbibbhlaihfckpc...

correct output
NO

user output
NO

Test 30

Verdict: ACCEPTED

input
10000 10000 10000
fodgaeiqjbocpodglembnamebdimqb...

correct output
NO

user output
NO

Test 31

Verdict:

input
25000 25000 12500
isaqmrnhixucovgtmcanojpdjnrops...

correct output
NO

user output
(empty)

Test 32

Verdict:

input
25000 25000 12500
aofhfsqifcrdezfmzoakkpfdwodcfh...

correct output
NO

user output
(empty)

Test 33

Verdict: ACCEPTED

input
25000 8333 12500
qoromlkxbskfhvcubtrnyztgieeykk...

correct output
YES

user output
YES