我为this problem(Uva 455)而疯狂:
如果字符串可以由以下字符组成,则称其为句点 k 连接另一个长度为 k 的字符串的一个或多个重复。 例如,字符串“
abcabcabcabc
”具有句点3,因为它是 由字符串“abc
”的4个重复组成。它还有时期6 (两次重复“abcabc
”)和12次(一次重复 “abcabcabcabc
”。编写程序以读取字符串,然后 确定其最小周期。
输入
输入文件的第一行 将包含一个整数 N ,指示该测试用例有多少个 您的程序将进行测试,后跟空白行。每个测试用例将 包含一个字符串,最多80个非空白字符。 两个连续的输入将由空白行分隔。
输出
一个 整数,表示每个输入字符串的最小周期 输入。两个连续的输出用空行分隔。
样本输入
1 HoHoHo
样本输出
2
我检查了我可以想象的所有测试用例,并且所有测试用例都返回了正确的结果,但在线法官仍然收到错误答案。我哪里做错了? (英语不是我的母语;请原谅输入或语法错误。)
#include <stdio.h>
#include <string.h>
#define maxn 85
int check(char* s, int per){
for(int i = 0; i < strlen(s) - per; i++){
if(s[i + per] != s[i]) return 0;
}
return 1;
}
int main(){
int T;
scanf("%d", &T);
char s[maxn];
while(T--){
scanf("%s", s);
int len = strlen(s);
bool OK = false;
for(int i = 1; i <= len/2 && (len % i == 0); i++){//That's wrong.
if(check(s, i)){
printf("%d\n", i);
OK = true;
break;
}
}
if(!OK) printf("%d\n", len);
if(T) printf("\n");
}
return 0;
}
答案 0 :(得分:0)
问题出在$('#fetchXML').click(function(){
$('#xmlContent').text('Loading ...');
const feedUrl = 'https://cors-anywhere.herokuapp.com/http://feeds.wnyc.org/dearhankandjohn';
const headers = new Headers({
'X-Requested-With':'XMLHttpRequest'
});
fetch(feedUrl, headers)
.then(function(response) {
return response.text();
})
.then(function(xmlText) {
$('#xmlContent').text(xmlText);
})
.catch(function(err){
$('#xmlContent').text(err);
});
});
中。您遇到遇到<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<table>
<tr>
<td><button id="fetchXML">
Fetch Feed
</button></td>
</tr>
<tr>
<td id="xmlContent"></td>
</tr>
</table>
不会除for(int i = 1; i <= len/2 && (len % i == 0); i++)
而不是跳过它的情况时就立即停止。
将循环写为:
i