日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

CF-557 E. Ann and Half-Palindrome(暴力Trie)

發布時間:2024/4/18 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 CF-557 E. Ann and Half-Palindrome(暴力Trie) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

CF-557 E. Ann and Half-Palindrome(暴力Trie)

題目鏈接

題意

給定一個字符串,求第K個半回文子串.

半回文串:對于字符串SSS, $S_i == S_{n-i+1} ,,,i\in[{1, \frac{|s|+1}{2}]}$

思路

暴力找所有合法的區間,首先枚舉長度iii,

ok[l][r]=1ok[l][r] = 1ok[l][r]=1表示區間[l,r][l,r][l,r]是一個半回文

ok[l][r]=(S[l]==R[r])&&ok[l+2][r?2]ok[l][r] = (S[l] == R[r]) \&\& ok[l+2][r-2]ok[l][r]=(S[l]==R[r])&&ok[l+2][r?2]

找到所有的區間之后在TrieTrieTrie上標記每個合法的子串,不能把所有的合法子串插入否則會超時(5000個’aaa’)

之后就dfsdfsdfs找第KKK

#include <bits/stdc++.h> const int maxn = 5e3 + 5; using namespace std; char s[maxn]; bool ok[maxn][maxn]; int k, len; struct Trie{int nex[maxn*maxn/2][2], cnt[maxn*maxn/2], end[maxn*maxn/2], fa[maxn*maxn/2];char C[maxn*maxn/2];int p, root;int newnode() {fill(nex[p], nex[p]+2, 0);cnt[p] = end[p] = 0;return p++;}void init() {p = 0;root = newnode();}void add(int u) {int now = root;for (int i = u; i < len; ++i) {if (nex[now][s[i]-'a'] == 0) {nex[now][s[i] - 'a'] = newnode();C[p-1] = s[i];fa[p-1] = now;}now = nex[now][s[i] - 'a'];if (ok[u][i]) end[now]++;}}void print(int u) {if (fa[u]) print(fa[u]);cout << C[u];}void dfs(int u) {if (end[u]) {k -= end[u];if (k <= 0) {print(u);cout << endl;exit(0);}}for (int i = 0; i < 2; ++i) {if (nex[u][i] == 0) continue;dfs(nex[u][i]);}} }trie; int main() {cin >> s >> k;len = strlen(s);trie.init();for (int i = 1; i <= len; ++i) {for (int j = 0; j <= len-i; ++j) {int l = j, r = j+i-1;if (r - l <= 3) ok[l][r] = (s[l] == s[r]);else ok[l][r] = (s[l] == s[r]) && ok[l+2][r-2];// if (ok[l][r]) trie.add(l, r); 這里太sb了,超時...}}for (int i = 0; i < len; ++i) trie.add(i);trie.dfs(0); return 0; }

總結

以上是生活随笔為你收集整理的CF-557 E. Ann and Half-Palindrome(暴力Trie)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 欧美三级在线看 | 亚洲iv一区二区三区 | 人人搞人人干 | 国产精品-色哟哟 | 欧美大白屁股 | 日韩在线资源 | 伊人久久久 | 一区二区三区国产在线观看 | 欧美理伦少妇2做爰 | 操比网站| 福利国产片 | 久久久一区二区三区四区 | 岛国午夜视频 | 精品少妇人妻av免费久久洗澡 | 黄色片99 | 欧美aⅴ在线观看 | 不卡一二区 | 亚洲综合五区 | 一区二区免费在线观看视频 | 黄网视频在线观看 | 毛片一卡二卡 | 91高清无打码 | 精品在线观看视频 | 成人免费视频软件网站 | 亚洲欧美视频在线播放 | 欧美日韩精品久久久免费观看 | 91在线视频导航 | 成人影视在线播放 | 精品丝袜一区 | 国产91大片| 亚洲欧洲一级 | 午夜成人亚洲理伦片在线观看 | 九九激情网 | 欧美日韩三级在线 | 国产一区二区 | 久久性色av| 综合婷婷久久 | 日韩在线观看视频免费 | 日韩一级免费 | 国产1区2区在线观看 | 日本黄a三级三级三级 | 日本大奶视频 | 亚洲第一区在线观看 | 操综合| 国产妇女馒头高清泬20p多 | 日本人视频69式jzzij | 豆花视频成人 | 欧美激情一区二区在线 | 女人脱裤子让男人捅 | 爱插网| 天天想夜夜操 | 枫可怜av | 精品日韩欧美 | 黄色一级在线视频 | 热久久国产 | 在线步兵区 | 女性裸体不遮胸图片 | 激情综| 欧美视频在线观看一区二区 | 日产毛片 | 欧美日韩在线免费观看视频 | 欧美极品在线视频 | 97在线观看免费视频 | 性做久久久久 | 无码人中文字幕 | 青青草视频污 | 美女污软件| 看黄色一级视频 | 国产视频二 | 丁香六月婷婷激情 | 999久久久国产精品 韩国精品一区二区 | 国产精品日韩在线 | 美女扒开粉嫩尿口 | 色婷婷成人网 | 国产精品一区二区三区在线播放 | 操人视频在线观看 | 美女露出粉嫩尿囗让男人桶 | 欧美69精品久久久久久不卡 | wwwxxxx日本| 香蕉av一区二区 | www.日韩欧美 | 久久久精品国产免费爽爽爽 | 国产欧美日 | 成人精品国产 | 一区二区三区 日韩 | 久色视频在线观看 | 中文字幕网伦射乱中文 | 免费91网站| 日韩二区三区四区 | 欧美色图第一页 | 伊人www | 日本一本在线 | 黑人一区二区三区四区五区 | 国产成人综合在线视频 | 在线观看欧美日韩 | 成人免费看片网站 | 天天干视频在线 | 国产乱码一区二区三区播放 | 精品裸体舞一区二区三区 |