Submission #1708490


Source Code Expand

#include <bits/stdc++.h>
#define inf 0x3f3f3f3f
#define maxn 200010
using namespace std;
typedef long long LL;
char s[maxn];
int opt[maxn], h[maxn];
int main() {
    scanf("%s", s+1);
    int len = strlen(s+1);
    for (int i = 1; i <= len; ++i) h[i] = h[i-1] ^ (1<<(s[i]-'a'));
    map<int, int> dp;
    for (int i = 1; i <= len; ++i) {
        opt[i] = (!h[i] || dp[h[i]]) ? dp[h[i]] : inf;
        int mask = 1;
        for (int j = 0; j < 26; ++j) {
            if ((h[i]^mask) == 0 || dp[h[i]^mask]) opt[i] = min(opt[i], dp[h[i]^mask]);
            mask <<= 1;
        }
        ++opt[i];
        if (!dp[h[i]] && h[i]) dp[h[i]] = opt[i];
        else dp[h[i]] = min(dp[h[i]], opt[i]);
    }
    printf("%d\n", opt[len]);
    return 0;
}

Submission Info

Submission Time
Task D - Yet Another Palindrome Partitioning
User kahlua
Language C++14 (GCC 5.4.1)
Score 700
Code Size 769 Byte
Status AC
Exec Time 2584 ms
Memory 205824 KiB

Compile Error

./Main.cpp: In function ‘int main()’:
./Main.cpp:9:21: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
     scanf("%s", s+1);
                     ^

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 700 / 700
Status
AC × 4
AC × 82
Set Name Test Cases
Sample 0_00.txt, 0_01.txt, 0_02.txt, 0_03.txt
All 0_00.txt, 0_01.txt, 0_02.txt, 0_03.txt, 1_00.txt, 1_01.txt, 1_02.txt, 1_03.txt, 1_04.txt, 1_05.txt, 1_06.txt, 1_07.txt, 1_08.txt, 1_09.txt, 1_10.txt, 1_11.txt, 1_12.txt, 1_13.txt, 1_14.txt, 1_15.txt, 1_16.txt, 1_17.txt, 1_18.txt, 1_19.txt, 1_20.txt, 1_21.txt, 1_22.txt, 1_23.txt, 1_24.txt, 1_25.txt, 1_26.txt, 1_27.txt, 1_28.txt, 1_29.txt, 1_30.txt, 1_31.txt, 1_32.txt, 1_33.txt, 1_34.txt, 1_35.txt, 1_36.txt, 1_37.txt, 1_38.txt, 1_39.txt, 1_40.txt, 1_41.txt, 1_42.txt, 1_43.txt, 1_44.txt, 1_45.txt, 1_46.txt, 1_47.txt, 1_48.txt, 1_49.txt, 1_50.txt, 1_51.txt, 1_52.txt, 1_53.txt, 1_54.txt, 1_55.txt, 1_56.txt, 1_57.txt, 1_58.txt, 1_59.txt, 1_60.txt, 1_61.txt, 1_62.txt, 1_63.txt, 1_64.txt, 1_65.txt, 1_66.txt, 1_67.txt, 1_68.txt, 1_69.txt, 1_70.txt, 1_71.txt, 1_72.txt, 1_73.txt, 1_74.txt, 1_75.txt, 1_76.txt, 1_77.txt
Case Name Status Exec Time Memory
0_00.txt AC 1 ms 256 KiB
0_01.txt AC 1 ms 256 KiB
0_02.txt AC 1 ms 256 KiB
0_03.txt AC 1 ms 256 KiB
1_00.txt AC 1 ms 256 KiB
1_01.txt AC 1 ms 256 KiB
1_02.txt AC 1 ms 256 KiB
1_03.txt AC 1 ms 256 KiB
1_04.txt AC 1 ms 256 KiB
1_05.txt AC 1 ms 256 KiB
1_06.txt AC 1 ms 256 KiB
1_07.txt AC 1 ms 256 KiB
1_08.txt AC 1525 ms 149248 KiB
1_09.txt AC 81 ms 2176 KiB
1_10.txt AC 106 ms 2176 KiB
1_11.txt AC 93 ms 2176 KiB
1_12.txt AC 54 ms 1920 KiB
1_13.txt AC 65 ms 2048 KiB
1_14.txt AC 72 ms 2048 KiB
1_15.txt AC 138 ms 2048 KiB
1_16.txt AC 229 ms 2048 KiB
1_17.txt AC 318 ms 2048 KiB
1_18.txt AC 394 ms 2048 KiB
1_19.txt AC 466 ms 2176 KiB
1_20.txt AC 547 ms 2432 KiB
1_21.txt AC 639 ms 2816 KiB
1_22.txt AC 760 ms 3584 KiB
1_23.txt AC 844 ms 4864 KiB
1_24.txt AC 931 ms 7424 KiB
1_25.txt AC 1074 ms 12032 KiB
1_26.txt AC 1142 ms 20352 KiB
1_27.txt AC 1298 ms 33920 KiB
1_28.txt AC 1403 ms 49920 KiB
1_29.txt AC 1533 ms 64256 KiB
1_30.txt AC 1752 ms 77568 KiB
1_31.txt AC 1949 ms 96384 KiB
1_32.txt AC 2276 ms 124160 KiB
1_33.txt AC 2584 ms 152832 KiB
1_34.txt AC 2436 ms 174336 KiB
1_35.txt AC 2579 ms 190592 KiB
1_36.txt AC 2248 ms 194944 KiB
1_37.txt AC 2315 ms 205824 KiB
1_38.txt AC 1159 ms 21760 KiB
1_39.txt AC 1154 ms 21760 KiB
1_40.txt AC 1197 ms 21888 KiB
1_41.txt AC 1171 ms 21376 KiB
1_42.txt AC 1128 ms 15232 KiB
1_43.txt AC 1105 ms 15104 KiB
1_44.txt AC 1106 ms 15104 KiB
1_45.txt AC 1083 ms 15104 KiB
1_46.txt AC 1014 ms 11008 KiB
1_47.txt AC 916 ms 10496 KiB
1_48.txt AC 973 ms 10752 KiB
1_49.txt AC 1003 ms 10880 KiB
1_50.txt AC 933 ms 8064 KiB
1_51.txt AC 896 ms 8192 KiB
1_52.txt AC 880 ms 8064 KiB
1_53.txt AC 907 ms 8064 KiB
1_54.txt AC 813 ms 6400 KiB
1_55.txt AC 803 ms 6400 KiB
1_56.txt AC 804 ms 6400 KiB
1_57.txt AC 778 ms 6400 KiB
1_58.txt AC 723 ms 5120 KiB
1_59.txt AC 670 ms 6912 KiB
1_60.txt AC 724 ms 5120 KiB
1_61.txt AC 665 ms 5120 KiB
1_62.txt AC 628 ms 4224 KiB
1_63.txt AC 641 ms 4224 KiB
1_64.txt AC 652 ms 4224 KiB
1_65.txt AC 629 ms 4224 KiB
1_66.txt AC 583 ms 3584 KiB
1_67.txt AC 540 ms 3584 KiB
1_68.txt AC 595 ms 3584 KiB
1_69.txt AC 546 ms 3584 KiB
1_70.txt AC 541 ms 3200 KiB
1_71.txt AC 536 ms 3200 KiB
1_72.txt AC 525 ms 3200 KiB
1_73.txt AC 519 ms 3200 KiB
1_74.txt AC 500 ms 3072 KiB
1_75.txt AC 470 ms 3072 KiB
1_76.txt AC 488 ms 2944 KiB
1_77.txt AC 465 ms 3072 KiB