UVa 455 最小重複字串
背景:因為一個輸出之間間隔一個空行,wa了幾次........
#include<stdio.h> #include<string.h> int main(void){ int t; char str[85]; scanf("%d",&t); while(t--){ getchar();getchar(); scanf("%s",str); int i=1,n=strlen(str); for(;i<=n;i++){ int ok=0; if(n%i!=0) continue; for(int j=0;j<n;j++){ if(str[j]!=str[j%i]) ok=1; } if(!ok) break; } printf("%d\n",i) ; if(t) printf("\n"); } return 0; }
相關推薦
UVa 455 最小重複字串
背景:因為一個輸出之間間隔一個空行,wa了幾次........ #include<stdio.h> #include<string.h> int main(void){ i
uva 10457(最小瓶頸路)
found clas color con 兩個 瓶頸 can ++ span 比賽的時候讀錯題了,賽後非要建最小生成樹然後dfs暴搜,有人告訴我不行,我還非要改一遍,改了一年,想明白了,不能保證下限,比如2,3,5能使兩個點連同,4,5也能的話,就不對了,想想我也是個鐵頭娃
uva(11354) 最小瓶頸生成樹+LCA
ini ace scanf nbsp pri size esp 最小 bool 求出最小生成樹後lca找最大權即可 #include<cstdio>#include<algorithm>#include<cstring>using nam
UVA - 455 Periodic Strings【字串】
Periodic Strings UVA - 455 題目傳送門 題目大意:先輸入一個數字n,在輸入n行字串,對每一個字串輸出其最小的週期長度,每兩個輸出間有一空行。 AC程式碼: #include <cstdio> #include &l
7-4 找最小的字串 (15 分)
本題要求編寫程式,針對輸入的N個字串,輸出其中最小的字串。 輸入格式: 輸入第一行給出正整數N;隨後N行,每行給出一個長度小於80的非空字串,其中不會出現換行符,空格,製表符。 輸出格式: 在一行中用以下格式輸出最小的字串: Min is: 最小字串 輸入樣例: 5
0015 找最小的字串
7-1 找最小的字串 (15 分) 本題要求編寫程式,針對輸入的N個字串,輸出其中最小的字串。 輸入格式: 輸入第一行給出正整數N;隨後N行,每行給出一個長度小於80的非空字串,其中不會出現換行符,空格,製表符。 輸出格式: 在一行中用以下格式輸出最小的字串: Min is: 最小字串 輸入樣例:
POJ-3693--字尾陣列求字典序最小重複次數最多子串
摘自2009年國家集訓隊羅穗騫論文《字尾陣列-處理字串的有力工具》 因此我們只需處理出原串正反兩個版本的字尾陣列,然後用rmq問題的處理方法求LCP,我的處理方法是讓關鍵點包含在r中,如果想包含在l中,只需把向前向後擴充套件的位置稍作處理&查詢rank最小值的區間
poj2406 kmp 最小重複子串
這個題就是利用kmp的next函式,求組成主串的最小重複子串的長度。 如果字串下標從1開始的話,字串長度len (1)若len mod ( len - next[len] ) = 0 那麼a[next[len]+1...len] 就是最小重複的子串 (2)若len mod
求一個字串的最長重複字串問題
給定一個字串,求出這個字串的最長重複字串,例如abcdbcd,最長重複字串是bcd。 分析: 方法1: 具體過程如下: 1)首先解決兩個字串的最長公共鄰接子串問題; 2)將字串,abcdbcd分成如下兩個字串的集合: “a" 和 "bcdbcd" "ab"和“cdbcd"
poj 2406 Power Strings (最小重複子串出現次數 kmp)
最小覆蓋子串長度為n-next[n] ,n為字串長度。如果恰好覆蓋就為n/(n-next[n]),否則為1. #include<cstdio> #include<cstring&
UVA 455 Periodic Strings(字串的迴圈節)
UVA 455 Periodic Strings A character stringis said to have periodk if it can be formed by concatenating one or morerepetitions of anot
UVA-140 最小頻寬 以後再補吧
夭折的一題,應該用set來儲存節點的 可參考程式碼連結 #include <cstdio> #include <cstring> #include <vector> #include <queue> #incl
給定一個只包含小寫字母的字串,刪除重複的字母,每個字母只出現一次。在所有結果中,輸出字典順序最小的。
本題源自leetcode 316 --------------------------------------------------------------------------------- 思路:1 用倆個vector 標記字元在串中的出現的次數,以及這個字元是否訪
UVa 1658,Admiral (拆點+限制最小費用流)
{} name 最小 ssi set dex 一個點 cost line 題目鏈接:https://icpcarchive.ecs.baylor.edu/index.php?option=com_onlinejudge&Itemid=8&page=show_
UVa 11419 我是SAM(最小點覆蓋+路徑輸出)
二分圖 現在 over div space void net https 最小點覆蓋 https://vjudge.net/problem/UVA-11419 題意:一個網格裏面有一些目標,可以從某一行,某一列發射一發子彈,可以打掉它;求最少的子彈,和在哪裏打?
uva 11419 (二分圖最小覆蓋)
int name mat main return str als uva scan 二分圖最小覆蓋數=最大匹配數 建模後即可 #include<cstdio>#include<cstring>#include<algorithm>usin
Stream My Contest UVA - 11865(帶權最小樹形圖+二分最小值最大化)
mem bps fine int algo cstring bsp ont 二分 #include <iostream> #include <cstdio> #include <sstream> #include <cs
UVA - 10480 Sabotage 最小割,輸出割法
air uva main clu fir span div opened signed UVA - 10480 Sabotage 題意:現在有n個城市,m條路,現在要把整個圖分成2部分,編號1,2的城市分成在一部分中,拆開每條路都需要花費,現在問達成目標的花費最少要隔開那幾
字串最小表示初探 By cellur925
我們考慮有一個字串,可以從這個字串的不同位置出發,把這個字串大聲朗讀出來,當到字串末端的時候再從頭開始讀,直到回到“夢開始的地方”。 設字串長度為\(n\),那麼有\(n\)種不同的讀法。我們現在想要在這些讀法中找一個字串使得他字典序最小,如何快速求出? 我們當然可以用其他樸素的方法(這裡不再贅述),但其
E - Period HDU - 1358 (找出字串的最小週期)(解釋題意 並且數學邏輯方法解題)
For each prefix of a given string S with N characters (each character has an ASCII code between 97 and 126, inclusive), we want to know whether the