Submission #15118777
Source Code Expand
#include <bits/stdc++.h>
#define inf (int)(1e9)
using namespace std;
int n;
string s;
vector<int> dp;
map<int, int> mp;
int solve();
int main() {
cin >> s;
n = s.size();
cout << solve() << endl;
return 0;
}
int solve() {
int sum = 0;
dp.assign(n + 1, inf);
dp[0] = 0;
mp[0] = 0;
for (int i = 0; i < n; ++i) {
sum ^= 1 << (s[i] - 'a');
for (int j = 0; j < 26; ++j) {
int bit = sum ^ (1 << j);
if (mp.find(bit) != mp.end()) dp[i + 1] = min(dp[i + 1], mp[bit] + 1);
}
if (mp.find(sum) != mp.end()) dp[i + 1] = min(dp[i + 1], mp[sum] + 1);
if (mp.find(sum) == mp.end() || mp[sum] > dp[i + 1]) mp[sum] = dp[i + 1];
}
return dp[n];
}
Submission Info
| Submission Time | |
|---|---|
| Task | D - Yet Another Palindrome Partitioning |
| User | m_tsubasa |
| Language | C++ (GCC 9.2.1) |
| Score | 700 |
| Code Size | 718 Byte |
| Status | AC |
| Exec Time | 676 ms |
| Memory | 13464 KiB |
Judge Result
| Set Name | Sample | All | ||||
|---|---|---|---|---|---|---|
| Score / Max Score | 0 / 0 | 700 / 700 | ||||
| Status |
|
|
| 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 | 6 ms | 3600 KiB |
| 0_01.txt | AC | 2 ms | 3600 KiB |
| 0_02.txt | AC | 3 ms | 3500 KiB |
| 0_03.txt | AC | 3 ms | 3488 KiB |
| 1_00.txt | AC | 2 ms | 3616 KiB |
| 1_01.txt | AC | 3 ms | 3508 KiB |
| 1_02.txt | AC | 2 ms | 3600 KiB |
| 1_03.txt | AC | 2 ms | 3612 KiB |
| 1_04.txt | AC | 1 ms | 3484 KiB |
| 1_05.txt | AC | 2 ms | 3656 KiB |
| 1_06.txt | AC | 2 ms | 3504 KiB |
| 1_07.txt | AC | 2 ms | 3556 KiB |
| 1_08.txt | AC | 410 ms | 13464 KiB |
| 1_09.txt | AC | 60 ms | 4188 KiB |
| 1_10.txt | AC | 60 ms | 4348 KiB |
| 1_11.txt | AC | 58 ms | 4344 KiB |
| 1_12.txt | AC | 31 ms | 4384 KiB |
| 1_13.txt | AC | 43 ms | 4336 KiB |
| 1_14.txt | AC | 47 ms | 4336 KiB |
| 1_15.txt | AC | 54 ms | 4388 KiB |
| 1_16.txt | AC | 57 ms | 4408 KiB |
| 1_17.txt | AC | 109 ms | 4348 KiB |
| 1_18.txt | AC | 166 ms | 4296 KiB |
| 1_19.txt | AC | 222 ms | 4344 KiB |
| 1_20.txt | AC | 267 ms | 4332 KiB |
| 1_21.txt | AC | 318 ms | 4340 KiB |
| 1_22.txt | AC | 406 ms | 4340 KiB |
| 1_23.txt | AC | 450 ms | 4340 KiB |
| 1_24.txt | AC | 502 ms | 4588 KiB |
| 1_25.txt | AC | 559 ms | 4852 KiB |
| 1_26.txt | AC | 603 ms | 5640 KiB |
| 1_27.txt | AC | 671 ms | 7028 KiB |
| 1_28.txt | AC | 660 ms | 8832 KiB |
| 1_29.txt | AC | 655 ms | 10460 KiB |
| 1_30.txt | AC | 605 ms | 11316 KiB |
| 1_31.txt | AC | 596 ms | 11840 KiB |
| 1_32.txt | AC | 581 ms | 12368 KiB |
| 1_33.txt | AC | 574 ms | 12772 KiB |
| 1_34.txt | AC | 526 ms | 12748 KiB |
| 1_35.txt | AC | 501 ms | 13032 KiB |
| 1_36.txt | AC | 475 ms | 12776 KiB |
| 1_37.txt | AC | 485 ms | 13060 KiB |
| 1_38.txt | AC | 672 ms | 5820 KiB |
| 1_39.txt | AC | 667 ms | 5992 KiB |
| 1_40.txt | AC | 676 ms | 5924 KiB |
| 1_41.txt | AC | 667 ms | 5772 KiB |
| 1_42.txt | AC | 635 ms | 5352 KiB |
| 1_43.txt | AC | 628 ms | 5460 KiB |
| 1_44.txt | AC | 636 ms | 5440 KiB |
| 1_45.txt | AC | 634 ms | 5408 KiB |
| 1_46.txt | AC | 595 ms | 5148 KiB |
| 1_47.txt | AC | 582 ms | 4868 KiB |
| 1_48.txt | AC | 593 ms | 4864 KiB |
| 1_49.txt | AC | 590 ms | 5144 KiB |
| 1_50.txt | AC | 542 ms | 4648 KiB |
| 1_51.txt | AC | 540 ms | 4668 KiB |
| 1_52.txt | AC | 534 ms | 4588 KiB |
| 1_53.txt | AC | 538 ms | 4604 KiB |
| 1_54.txt | AC | 486 ms | 4608 KiB |
| 1_55.txt | AC | 492 ms | 4504 KiB |
| 1_56.txt | AC | 498 ms | 4672 KiB |
| 1_57.txt | AC | 487 ms | 4612 KiB |
| 1_58.txt | AC | 455 ms | 4320 KiB |
| 1_59.txt | AC | 452 ms | 4336 KiB |
| 1_60.txt | AC | 450 ms | 4288 KiB |
| 1_61.txt | AC | 444 ms | 4288 KiB |
| 1_62.txt | AC | 415 ms | 4344 KiB |
| 1_63.txt | AC | 405 ms | 4332 KiB |
| 1_64.txt | AC | 411 ms | 4224 KiB |
| 1_65.txt | AC | 411 ms | 4288 KiB |
| 1_66.txt | AC | 364 ms | 4268 KiB |
| 1_67.txt | AC | 371 ms | 4356 KiB |
| 1_68.txt | AC | 379 ms | 4320 KiB |
| 1_69.txt | AC | 376 ms | 4340 KiB |
| 1_70.txt | AC | 327 ms | 4352 KiB |
| 1_71.txt | AC | 338 ms | 4352 KiB |
| 1_72.txt | AC | 336 ms | 4340 KiB |
| 1_73.txt | AC | 339 ms | 4348 KiB |
| 1_74.txt | AC | 316 ms | 4348 KiB |
| 1_75.txt | AC | 313 ms | 4232 KiB |
| 1_76.txt | AC | 309 ms | 4344 KiB |
| 1_77.txt | AC | 313 ms | 4384 KiB |