1869 93998 900 368136851
aoyqashhquraeakciklzxikmassmpwlgaoaqzegwoakganffabaesiiqsiexupmeamzreaadtsm
<1307330 bytes omitted>
用户输出
235658071517
系统信息
Exited with return code 0
编号 | 题目 | 状态 | 分数 | 总时间 | 内存 | 代码 / 答案文件 | 提交者 | 提交时间 |
---|---|---|---|---|---|---|---|---|
#23853 | #1134. ddd的回文串 | Accepted | 100 | 378 ms | 2644 K | C++ 17 / 2.2 K | Leohh | 2020-02-20 14:54:03 |
#include <iostream>
#include <stdio.h>
#include <string.h>
#define MAX_N 1000005
#define MAX_A 205
#define INF 0x3f3f3f3f3f3f3f3fLL
#define int long long
using namespace std;
int n, m, K, T, ans = 0;
int c[2][MAX_A];
int f[MAX_A][MAX_A];
int g[MAX_A][MAX_A];
char s[MAX_N];
bool vis[MAX_N];
signed main() {
scanf("%lld%lld%lld%lld%s", &n, &m, &K, &T, s + 1);
char cx[4], cy[4];
int x;
memset(f, 0x3f, sizeof(f));
for (int i = 'a'; i <= 'z'; i++) {
f[i][i] = 0;
}
for (int i = 1; i <= m; i++) {
scanf("%s%s%lld", cx, cy, &x);
f[cx[0]][cy[0]] = min(f[cx[0]][cy[0]], x);
}
for (int k = 'a'; k <= 'z'; k++) {
for (int i = 'a'; i <= 'z'; i++) {
for (int j = 'a'; j <= 'z'; j++) {
f[i][j] = min(f[i][j], f[i][k] + f[k][j]);
}
}
}
memset(g, 0x3f, sizeof(g));
for (int i = 'a'; i <= 'z'; i++) {
for (int j = 'a'; j <= 'z'; j++) {
for (int k = 'a'; k <= 'z'; k++) {
g[i][j] = min(g[i][j], f[i][k] + f[j][k]);
}
}
}
int pos = K, las = n;
for (int i = 1; i <= n; i++) {
// cout << "i = " << i << endl;
if (i + K - 1 <= n) {
if (!vis[i + K - 1]) {
c[(i + K - 1) & 1][s[i + K - 1]]++, vis[i + K - 1] = true;
// cout << "+nxt = " << i + K - 1 << endl;
}
}
if (i < pos) {
if (!vis[pos]) {
// cout << "+pos = " << pos << endl;
c[pos & 1][s[pos]]++, vis[pos] = true;
}
pos--;
} else {
if (vis[i]) {
c[i & 1][s[i]]--, vis[i] = false;
// cout << "-self" << endl;
}
}
while (2 * n - K + 1 - i < las) {
if (vis[las]) {
c[las & 1][s[las]]--, vis[las] = false;
}
las--;
}
int id = (i + K - 1) & 1, res = 0;
for (int j = 'a'; j <= 'z'; j++) {
res += c[id][j] * min(T, g[s[i]][j]);
}
ans += res;
// cout << "res = " << res << endl;
}
printf("%lld\n", ans);
}
1869 93998 900 368136851
aoyqashhquraeakciklzxikmassmpwlgaoaqzegwoakganffabaesiiqsiexupmeamzreaadtsm
<1307330 bytes omitted>
用户输出
235658071517
系统信息
Exited with return code 0
1974 98954 968 854839460
vimioksqdackekoiogisymgukwkmbmzvwmzgqoscqnpmzqsgaeyynxojyakemeakcqwczceneyq
<1376323 bytes omitted>
用户输出
225166532417
系统信息
Exited with return code 0
1890 90296 900 379213088
iqbiiepvmvelcknexeylwonjpynywravcqacaetkyzkccteawoaueqwgeucolcuoetsgumibmmg
<1256103 bytes omitted>
用户输出
257365236272
系统信息
Exited with return code 0
1867 98533 913 379089763
qmbhosqejvcnwloltoamiuzmzgizcyujgdqkuailfmknnsyumwpygneybdgonyxqsynesgeoeso
<1370183 bytes omitted>
用户输出
167645870596
系统信息
Exited with return code 0
1971 95944 947 812056313
kwoeuyjoceseuqbgfeascwmpamynqmgafnowkhuqsmojotkswsshacsieaukaqwedfcgsmidmme
<1334566 bytes omitted>
用户输出
199103971214
系统信息
Exited with return code 0
1809 94391 901 913811389
gmuozeaxqigaxzoiekiopsjkmwklskarxcadkoxqiculgifwaikmqdmaswuwkhzawpicepmupiq
<1312733 bytes omitted>
用户输出
245828151524
系统信息
Exited with return code 0
96275 94290 46452 21716561
aotvefmmaszastfwmktmeokiqjfsbiargmhtybkwwniqywqayywmeocemeacwrsakqqqmqnny
<1405742 bytes omitted>
用户输出
669440109451668
系统信息
Exited with return code 0
99039 90167 45356 432557883
sxaufacaqcyywskiauamomyknwickqmcgaretyuoabetekacggbaaxeumuimoxaetcacuoqk
<1351226 bytes omitted>
用户输出
645817074484703
系统信息
Exited with return code 0
91199 97743 45072 913975116
wvpfsqnaogagamamswyhmuweafagvaxqiksgmkpwaicuzaujunenzdnhoicwygmodaatygnm
<1448730 bytes omitted>
用户输出
506803744711132
系统信息
Exited with return code 0
99108 95604 47408 636114061
iwiaiggkuwnakugunakmccuvsgyfwiwccyeukkmedmqabdxlmmktrdixwzqivmwmeusjkois
<1426935 bytes omitted>
用户输出
582014501328894
系统信息
Exited with return code 0
91278 95295 45439 257640309
aakpiahfmscdwpemgrgaudoaoawinqadeagvwnsrkaywdmkvsajayskhmaffztywiyqiokol
<1414883 bytes omitted>
用户输出
442083747025033
系统信息
Exited with return code 0
96636 94520 46300 357047255
vrntaamcuauwuqyykaybtkrlwnjwpfgoaoumszduzoowiwvppmfefmuoxauastcxicqfaeha
<1409214 bytes omitted>
用户输出
558344083111282
系统信息
Exited with return code 0
91079 90668 45420 576653687
wezoeujyagmumepihcofomaiawgvilngqmaikcaasycqrynzaoyqjudygjxuhwmngunawlyw
<1350290 bytes omitted>
用户输出
538789922907646
系统信息
Exited with return code 0
93891 97160 46627 796794884
guugmceolylqvyooaaymecapunxqqtmkcxevmoofwuyfemiaawsmmgqkmkidapcneiakrthn
<1443449 bytes omitted>
用户输出
469006808697808
系统信息
Exited with return code 0
95017 92640 46777 259673790
fjsgoxgoywwuanadqopbkapxnsgertagmeogsgawwqqscsovzjqtakoiuucrlansiyfpirwj
<1381464 bytes omitted>
用户输出
437550575218548
系统信息
Exited with return code 0
92540 96663 45586 392541641
aaaaedaivgvgnaikgeipgoxvcvmxtyamuawaicwnmomskcguiadgbarlgkazkfsaraoytkmy
<1434823 bytes omitted>
用户输出
503992149083265
系统信息
Exited with return code 0
97373 93795 47953 463547353
cyllysjenhgpygsakncoaisdyaaqjqwvuwrvlglyiqnncleogoqicweiaexibraomnbeaqkc
<1400168 bytes omitted>
用户输出
987280699937697
系统信息
Exited with return code 0
96183 91174 47474 413948014
xacdikjckmifayuikmneohqmqybqxaassekygwqeqqktjyiihmxaocqacgqswqfoqnaayoim
<1362412 bytes omitted>
用户输出
692996779148754
系统信息
Exited with return code 0
97842 94434 48193 889116164
uwhyaauecxflqoyhwnfqicpqjktktagguhkciyokwovdmmagdmaiinyrikoikycvuaqiyiay
<1409658 bytes omitted>
用户输出
752717899660312
系统信息
Exited with return code 0
97147 90973 45744 962244475
wdmazcyiqupksfkupypxyaknazgahuoekgkykciaqibownkghaiyndjgywgcatwwcpwysorc
<1360532 bytes omitted>
用户输出
929003800841297
系统信息
Exited with return code 0