10.24 So many prefix?
題目:
解題思路:
KMP + DP f[i]=f[next[i]]+(i
Accepted code:
#include<cmath>
#include<cstdio>
#include<cstring>
#include<iostream>
#include<algorithm>
using namespace std;
const int M = 200010;
char s[M];
int nxt[M], f[M], n, k, ans;
int main()
{
scanf("%s", s+1); n = strlen(s+1);
for(int i = 2; i <= n; ++i) {
while(k && s[k+1] != s[i]) k = nxt[k];
if(s[k+1] == s[i]) nxt[i] = ++k;
}
for(int i = 2; i <= n; ++i) {
if(i%2 == 0) f[i]++;
f[i] += f[nxt[i]];
ans += f[i];
}
printf ("%d\n", ans);
return 0;
}
相關推薦
10.24 So many prefix?
題目: 解題思路: KMP + DP f[i]=f[next[i]]+(if[i] = f[next[i]] + (i%2 == 0)f[i]=f[next[i]]+(i Accepted code: #include<cmath> #includ
jzoj 5178. 【NOIP2017提高組模擬6.28】So many prefix?(kmp+dp)
5178. 【NOIP2017提高組模擬6.28】So many prefix? Description Sample Input 樣例一: abababc 樣例二: isdashagayisdashagaydashisnotagaydashisnotagay Samp
[jzoj 5178] [NOIP2017提高組模擬6.28] So many prefix? 解題報告(KMP+DP)
題目連結: https://jzoj.net/senior/#main/show/5178 題目: 題解: 我們定義$f[pos]$表示以位置pos為字尾的字串對答案的貢獻,答案就是$\sum_{i=1}^{n} f[i]$ 考慮怎麼得到f陣列,我們有$f[i]=f[nxt[i]]+[i是偶數]
【JZOJ5178】So many prefix?【KMP】【DP】
題目大意: 題目連結:https://jzoj.net/senior/#main/show/5178 題目圖片: http://wx3.sinaimg.cn/mw690/0060lm7Tly1fwlvu2xyz7j30mx05oq3e.jpg http://wx3.sinaimg.c
ssl1217.So many prefix?
題目 題解 發現是一道變了形的kmp 然後用一下快讀,再觀察一下樣例,然後上kmp 程式碼 #include <cstdio> #include <cstring> usi
【字串】SSL_1216 So many prefix?
題意 給出一個字串,求出字首長度為偶數的子串在這個字串中出現的次數的總和。 思路 我們可以想到動態規劃。設f[i]f[i]f[i]為字首1∼i1\sim i1∼i中偶數串出現的次數(包括自己),可得:
背水一戰 Windows 10 (24) - MVVM: 通過 Binding 或 x:Bind 結合 Command 實現,通過非 ButtonBase 觸發命令
block files grid collect gin 綁定 專註 ins ext 原文:背水一戰 Windows 10 (24) - MVVM: 通過 Binding 或 x:Bind 結合 Command 實現,通過非 ButtonBase 觸發命令[源碼下載] 背
10.24
image important 內部 外部 spl .cn child blog 第一個 id選擇器>類選擇器>標簽!important 最高優先級行內樣式>內部樣式>外部樣式min-width:1190px# 空的outline:none
【亂搞/分治】【最短路】【線段樹】Day 10.24
tdi prior 做的 continue void 之間 sizeof queue oid 1、斜率 可以證明如果兩點之間還有一點的話那麽原來的兩個點連線一定不會是最大斜率 然後我就寫了個沙茶分治………… 其實根據上面的推論只用枚舉相鄰的兩個點,掃一遍就可以了 1 #
2017-10-24 NOIP模擬賽
b- 不一定 urn 要求 接下來 time -a -- 技術分享 括號序列 (bracket) Time Limit:1000ms Memory Limit:128MB 題目描述 LYK有一個括號序列,但這個序列不一定合法。 一個合法的括號序列如下:
歡迎來懟——第12次Scrum會議(10/24)
看板 照片 div ron 內容 body 時間 www. 博客 一、小組信息 隊名:歡迎來懟小組成員隊長:田繼平成員:李圓圓,葛美義,王偉東,姜珊,邵朔,冉華 小組照片 二、開會信息 時間:2017/10/23 17:17~17:30,總計13min。地點:東北
2017.10.24
printf -1 bsp tmp next als 參數 () 解釋 今天主要進行了一些模板的復習。主要是樹剖lca方面。感覺雖然是學過的東西,不寫的話還是很容易忘的。 商務旅行 時間限制: 1 s 空間限制: 128000 KB
流量校準儀開發日誌-2017-10-24
程序 eva read data sele () gen context logs 今晚的內容: 把校準部分搞定 把參數存儲調通 讓電機自己啟動開始動作 今天實際完成的工作量: 寫了校準函數 1 /**************************
10-24-2017 星期二
表達式 nbsp 冒泡排序 精度 下午 ros 哪裏 codevs spa 上午考了試,Dreif考到一半突然rush 超市,然後他爆炸了hhh; 我T1玄學做法AC,後來才發現其實就是個冒泡排序233; 下午比較水,講題的時候效率很低,講完題做了做T4(US
達內 10.24-25linux基礎學習筆記
linux初級學習linux系統簡單認識: windows系統是我們常見的系統,它采用的是圖形化的操作界面,簡單來說就是用鼠標點點點, 進行操作; linux系統使用的是命令行操作模式,需要輸入命令才能夠運行程序。而且linux系統是一個開源的系統,bug來說相較於windows系統要少很多,所以
2017.10.24日更新_ Win10x64x86企業版esd下載_版本號為:1709(10299.19)
windows 1709 純凈版 微軟官方原版WIM離線整合,無精簡,無個人信息,無推廣,系統安裝後無整合殘留文件,系統非常純凈。本次更新的專業版與企業版啟用了內置管理員。整合只為實現自動安裝自動kms(微軟允許的KMS工具)。=============================
10.23 linux任務計劃cron 10.24 chkconfig工具 10.25 system
oss process onf fff tar src images 任務 nag 八周一次課10.23 linux任務計劃cron10.24 chkconfig工具10.25 systemd管理服務10.26 unit介紹10.27 target介紹10.23 linux
Android逆向-Android逆向基礎10(so文件分析大合集)
取出 ovs stat 計算 用途 instance tex -s 自動創建 0x00 前言 導航 博客導航戳這裏練習資源戳這裏 說明 在so文件的分析上,我們需要對一些ARM匯編的邏輯實現。在代碼邏輯上,只對if,switch,還有循環進行一個demo分析和創建。可能會篇
團隊任務3:每日例會(2018-10-24)
nbsp 工程師 發現 完成 經理 積分 一個 遊戲 大戰 團隊任務3:每日例會(2018-10-24) 我們是第二組。 我們開發的軟件是飛機大戰。 整理人:李柏侖,2016035107096 ,項目經理 整體軟件的UI設計部分已經完成。 飛機的移動,射擊部分已經完成。積分
祝廣大程序員們10.24節日快樂
mar caf text 分享圖片 ges pro ffffff process 快樂 聽說今天是程序員日,祝廣大的程序員們節日快樂,望你們保重身體,勞逸結合哦(PS:當碼農太操勞的話,不妨考慮職業轉型考個PMP^_^) 祝廣大程序員們10.24節日快樂