cf 1029 A 新生賽的題補回來了

2021-10-08 03:23:24 字數 613 閱讀 3766

題目

上學期的時候已經確定這個要找公共字首和字尾的最長長度了,近幾天研究了kmp更加了解了這個東西。這道題可以讓我們更清楚的了解next陣列。那這題怎麼做呢?

首先我們把next陣列求出來,得到字串(n這個位置,因為是整個字串重複)的最長公共前字尾長度,然後直接輸出一遍,然後我們可以直接利用公共部分,削減剩下輸出的長度,具體可以看**。

#include

#include

#include

#include

#include

#include

//#define int long long

using

namespace std;

int kmp[

1000003

],len,j,cnt,n,k;

char a[

1000003];

intmain()

if(a[j+1]

==a[i]

) kmp[i]

=j;}

cout

;for

(int i=

1;i<=k;i++

)}

清華月賽 Yazid的新生舞會題解

考慮列舉所有區間,然後求其眾數及出現次數,並判斷是否超過區間總長的一半,統計答案即可。時間複雜度o n3 考慮先列舉區間的左端點 l 再從左到右列舉右端點 r並用陣列維護每個數的出現次數,同時使用變數維護當前眾數 眾數的出現次數。不難發現,當右端點向右移動時,這些資訊都是非常方便維護的。於是我們便可...

新生賽002(涼心的比賽)補題

這次又寫了簽到題 codeforces 976a 題幹傳送門 題意 其實只需要得出0和1的數目 然後輸出乙個1和所有的0即可 include include include include using namespace std int n string s int main str maxn bo...

新生周賽 小青的宿舍 C語言

題目描述 小青報道過後,學長學姐們很開心,決定幫助小青拿行李回宿舍。當然,小青來到了乙個新環境,自然是要轉轉的,於是小青去蓮湖裡游了個泳 大家不要學小青啊!上岸之後,小青準備回寢室換衣服了,但是他忘記寢室號了。只記得在a區。這時,小青的好朋友四火過來了,小青突然想起來四火和自己乙個寢室的,於是小青向...