2014-05-29 00:35:26
題意 & 思路:判斷給出的數num各乘以(1....n(num的位數))是否都是迴圈數。顯然的大數乘法,我的思路是將原num擴充套件成兩倍長(如1245擴充套件為12451245),再對每個積進行kmp匹配,全配上說明是迴圈數。
#include #include#include
using
namespace
std;
const
int maxn = 60
;char f[maxn + 5],tf[maxn + 5
];char arr[2 * maxn + 5
];int next[maxn + 5
],tlen,len;
void
get_next()
else
}}bool
kmp()
else
}if(j ==tlen )
else
}int
main()
arr[
2 * len] = '\0'
;
for(int j = 0; j < maxn + 5; j++)
for(int i = 0; i < len; i++)
//逆序儲存數字,並標記每個位數
int flag = 1
;
for(int i = 2; i <= len; i++)
}char
temp;
for(int j = 0; j < tlen / 2; j++)
if(!kmp())
}for(int i = 0; i < len; i++)
if(!flag)
else
}return0;
}
poj2752 字串子KMP應用
統計字首字尾相等的個數,包括自身,從小到大輸出。可以通過next向前統計。因為每乙個next i 都指向該串前部字串 p0p1.pk 1 與i之前字串相等 pi k 1.pi 2pi 1 的最大字串,只要再向前統計字串的匹配個數,即可得到更小的匹配情況。還有,開大的陣列的話,不能子main 裡面開,...
poj2752 字串子KMP應用
統計字首字尾相等的個數,包括自身,從小到大輸出。可以通過next向前統計。因為每乙個next i 都指向該串前部字串 p0p1.pk 1 與i之前字串相等 pi k 1.pi 2pi 1 的最大字串,只要再向前統計字串的匹配個數,即可得到更小的匹配情況。還有,開大的陣列的話,不能子main 裡面開,...
8 8字串處理
字串處理 string 無子類 hello 構造字串物件 public int length 獲取字串的長度 system.out.println 輸入姓名 scanner sc new scanner system.in string str sc.nextline string str 李芳 s...