| Task: | Spin-Pop-Squeeze-Clap |
| Sender: | aalto25c_003 |
| Submission time: | 2025-09-17 20:38:57 +0300 |
| Language: | C++ (C++17) |
| Status: | READY |
| Result: | WRONG ANSWER |
| test | verdict | time | |
|---|---|---|---|
| #1 | ACCEPTED | 0.00 s | details |
| #2 | ACCEPTED | 0.00 s | details |
| #3 | ACCEPTED | 0.00 s | details |
| #4 | ACCEPTED | 0.00 s | details |
| #5 | ACCEPTED | 0.00 s | details |
| #6 | WRONG ANSWER | 0.00 s | details |
| #7 | WRONG ANSWER | 0.01 s | details |
| #8 | WRONG ANSWER | 0.00 s | details |
| #9 | WRONG ANSWER | 0.00 s | details |
| #10 | WRONG ANSWER | 0.01 s | details |
| #11 | WRONG ANSWER | 0.00 s | details |
| #12 | WRONG ANSWER | 0.00 s | details |
| #13 | WRONG ANSWER | 0.00 s | details |
| #14 | WRONG ANSWER | 0.00 s | details |
| #15 | WRONG ANSWER | 0.00 s | details |
| #16 | WRONG ANSWER | 0.00 s | details |
| #17 | WRONG ANSWER | 0.00 s | details |
| #18 | WRONG ANSWER | 0.00 s | details |
| #19 | WRONG ANSWER | 0.00 s | details |
| #20 | WRONG ANSWER | 0.00 s | details |
| #21 | WRONG ANSWER | 0.00 s | details |
| #22 | WRONG ANSWER | 0.00 s | details |
| #23 | WRONG ANSWER | 0.00 s | details |
| #24 | WRONG ANSWER | 0.00 s | details |
| #25 | WRONG ANSWER | 0.00 s | details |
| #26 | WRONG ANSWER | 0.00 s | details |
| #27 | WRONG ANSWER | 0.00 s | details |
| #28 | WRONG ANSWER | 0.00 s | details |
| #29 | WRONG ANSWER | 0.00 s | details |
| #30 | WRONG ANSWER | 0.00 s | details |
| #31 | WRONG ANSWER | 0.00 s | details |
| #32 | WRONG ANSWER | 0.00 s | details |
| #33 | WRONG ANSWER | 0.00 s | details |
| #34 | WRONG ANSWER | 0.00 s | details |
| #35 | WRONG ANSWER | 0.00 s | details |
Code
#include <cstdint>
#include <iostream>
#include <vector>
// def ff(aa, bb, spin, myCache):
// if myCache[bb][aa] != -1:
// return myCache[bb][aa]
// if aa == -1:
// return bb+1
// if bb == -1:
// return aa+1
// # print(spin)
// mi = min(
// ff(aa, bb-1, spin, myCache)+1,
// ff(aa-1, bb, spin, myCache)+1,
// ff(aa-1, bb-1, spin, myCache)+(0 if (numA[aa]+spin)%10 == (numB[bb])
// else 1), # ff(aa-1, bb-1, spin+1, myCache)+1
// )
// myCache[bb][aa] = mi
// return mi
int ff(int aaPos, std::vector<char> &aaArr, int aaLen, int bbPos,
std::vector<char> &bbArr, int bbLen, int spin,
std::vector<char> &myCache) {
if (myCache[bbPos * aaLen + aaPos] != -1)
return myCache[bbPos * aaLen + aaPos];
if (aaPos == -1)
return bbPos + 1;
if (bbPos == -1)
return aaPos + 1;
int bbMinus1 =
ff(aaPos, aaArr, aaLen, bbPos - 1, bbArr, bbLen, spin, myCache) + 1;
int aaMinus1 =
ff(aaPos - 1, aaArr, aaLen, bbPos, bbArr, bbLen, spin, myCache) + 1;
int same =
ff(aaPos - 1, aaArr, aaLen, bbPos - 1, bbArr, bbLen, spin, myCache) +
((aaArr[aaPos] + spin) % 10 == bbArr[bbPos] ? 0 : 1);
int mi = same;
if (aaMinus1 < mi)
mi = aaMinus1;
if (bbMinus1 < mi)
mi = bbMinus1;
myCache[bbPos * aaLen + aaPos] = mi;
return mi;
}
int main() {
uint64_t num1;
std::cin >> num1;
uint64_t num2;
std::cin >> num2;
std::vector<char> aaArr;
std::vector<char> bbArr;
while (num1 > 0) {
int digit = num1 % 10;
num1 /= 10;
aaArr.push_back(digit);
}
while (num2 > 0) {
int digit = num2 % 10;
num2 /= 10;
bbArr.push_back(digit);
}
int aaArrLen = aaArr.size();
int bbArrLen = bbArr.size();
int mi = 2147483647;
for (int spin = 0; spin < 10; spin++) {
std::vector<char> myCache(aaArrLen * bbArrLen, -1);
int ret = ff(aaArrLen - 1, aaArr, aaArrLen, bbArrLen - 1, bbArr, bbArrLen,
spin, myCache);
if (ret + spin < mi) {
mi = ret + spin;
}
}
std::cout << mi << std::endl;
}Test details
Test 1
Verdict: ACCEPTED
| input |
|---|
| 111222 283303 |
| correct output |
|---|
| 4 |
| user output |
|---|
| 4 |
Test 2
Verdict: ACCEPTED
| input |
|---|
| 123123 54545 |
| correct output |
|---|
| 4 |
| user output |
|---|
| 4 |
Test 3
Verdict: ACCEPTED
| input |
|---|
| 111 222 |
| correct output |
|---|
| 1 |
| user output |
|---|
| 1 |
Test 4
Verdict: ACCEPTED
| input |
|---|
| 999 999 |
| correct output |
|---|
| 0 |
| user output |
|---|
| 0 |
Test 5
Verdict: ACCEPTED
| input |
|---|
| 450 57 |
| correct output |
|---|
| 2 |
| user output |
|---|
| 2 |
Test 6
Verdict: WRONG ANSWER
| input |
|---|
| 660487647593824219489241157815... |
| correct output |
|---|
| 674 |
| user output |
|---|
| 8 |
Test 7
Verdict: WRONG ANSWER
| input |
|---|
| 914177763170669074391500080636... |
| correct output |
|---|
| 130 |
| user output |
|---|
| 8 |
Test 8
Verdict: WRONG ANSWER
| input |
|---|
| 011524493909266858784005756682... |
| correct output |
|---|
| 681 |
| user output |
|---|
| 8 |
Test 9
Verdict: WRONG ANSWER
| input |
|---|
| 982597919074833788762328601290... |
| correct output |
|---|
| 717 |
| user output |
|---|
| 8 |
Test 10
Verdict: WRONG ANSWER
| input |
|---|
| 416721106840388542143044324451... |
| correct output |
|---|
| 215 |
| user output |
|---|
| 8 |
Test 11
Verdict: WRONG ANSWER
| input |
|---|
| 458073021573681930364262129972... |
| correct output |
|---|
| 473 |
| user output |
|---|
| 8 |
Test 12
Verdict: WRONG ANSWER
| input |
|---|
| 917400297550473688139849165156... |
| correct output |
|---|
| 699 |
| user output |
|---|
| 8 |
Test 13
Verdict: WRONG ANSWER
| input |
|---|
| 260181590830166131860913909960... |
| correct output |
|---|
| 584 |
| user output |
|---|
| 8 |
Test 14
Verdict: WRONG ANSWER
| input |
|---|
| 562301238360777679361730486761... |
| correct output |
|---|
| 284 |
| user output |
|---|
| 8 |
Test 15
Verdict: WRONG ANSWER
| input |
|---|
| 954220587915890627622301289161... |
| correct output |
|---|
| 416 |
| user output |
|---|
| 8 |
Test 16
Verdict: WRONG ANSWER
| input |
|---|
| 067903774208751350629566447245... |
| correct output |
|---|
| 442 |
| user output |
|---|
| 8 |
Test 17
Verdict: WRONG ANSWER
| input |
|---|
| 877893287921742180967929081003... |
| correct output |
|---|
| 358 |
| user output |
|---|
| 8 |
Test 18
Verdict: WRONG ANSWER
| input |
|---|
| 485260574793809275253093185610... |
| correct output |
|---|
| 442 |
| user output |
|---|
| 8 |
Test 19
Verdict: WRONG ANSWER
| input |
|---|
| 423232218340629042147624537896... |
| correct output |
|---|
| 192 |
| user output |
|---|
| 8 |
Test 20
Verdict: WRONG ANSWER
| input |
|---|
| 983444174766143554582284201195... |
| correct output |
|---|
| 83 |
| user output |
|---|
| 8 |
Test 21
Verdict: WRONG ANSWER
| input |
|---|
| 308023002531575464533553486397... |
| correct output |
|---|
| 984 |
| user output |
|---|
| 8 |
Test 22
Verdict: WRONG ANSWER
| input |
|---|
| 774637064330445294039402907794... |
| correct output |
|---|
| 544 |
| user output |
|---|
| 8 |
Test 23
Verdict: WRONG ANSWER
| input |
|---|
| 645428410366485628023288358114... |
| correct output |
|---|
| 378 |
| user output |
|---|
| 8 |
Test 24
Verdict: WRONG ANSWER
| input |
|---|
| 175337727474341582323359837344... |
| correct output |
|---|
| 695 |
| user output |
|---|
| 8 |
Test 25
Verdict: WRONG ANSWER
| input |
|---|
| 081836584929414654154099313187... |
| correct output |
|---|
| 493 |
| user output |
|---|
| 8 |
Test 26
Verdict: WRONG ANSWER
| input |
|---|
| 241592066112579763355561876139... |
| correct output |
|---|
| 630 |
| user output |
|---|
| 8 |
Test 27
Verdict: WRONG ANSWER
| input |
|---|
| 664737828830059612330669705871... |
| correct output |
|---|
| 559 |
| user output |
|---|
| 8 |
Test 28
Verdict: WRONG ANSWER
| input |
|---|
| 230972151340592860909446321989... |
| correct output |
|---|
| 696 |
| user output |
|---|
| 8 |
Test 29
Verdict: WRONG ANSWER
| input |
|---|
| 410946685234703970117608650309... |
| correct output |
|---|
| 691 |
| user output |
|---|
| 8 |
Test 30
Verdict: WRONG ANSWER
| input |
|---|
| 692323212407710827747149254185... |
| correct output |
|---|
| 536 |
| user output |
|---|
| 8 |
Test 31
Verdict: WRONG ANSWER
| input |
|---|
| 034704049619193895285878119956... |
| correct output |
|---|
| 467 |
| user output |
|---|
| 8 |
Test 32
Verdict: WRONG ANSWER
| input |
|---|
| 336980270982636303223976539004... |
| correct output |
|---|
| 543 |
| user output |
|---|
| 8 |
Test 33
Verdict: WRONG ANSWER
| input |
|---|
| 744311485456233719196607507429... |
| correct output |
|---|
| 570 |
| user output |
|---|
| 8 |
Test 34
Verdict: WRONG ANSWER
| input |
|---|
| 289232763326229330631165228849... |
| correct output |
|---|
| 563 |
| user output |
|---|
| 8 |
Test 35
Verdict: WRONG ANSWER
| input |
|---|
| 159941856600173517598637236698... |
| correct output |
|---|
| 431 |
| user output |
|---|
| 8 |
