首页 > 代码库 > BestCoder Round #89 1001 Fxx and string
BestCoder Round #89 1001 Fxx and string
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5944
分析:
竟然 i,j,k成等比数列,即i*k = j*j,还要满足 j|i or j|k。
不防设:
j = i*j;
k = i*j*j,就满足那两个条件了,然后遍历这两个条件。
1 #include <iostream> 2 #include <cstdio> 3 #include <cstring> 4 #include <algorithm> 5 6 using namespace std; 7 8 int main() 9 {10 int t;11 cin>>t;12 while(t--) {13 14 char s[10000+5];15 scanf("%s",s+1);16 int len = strlen(s+1);17 int ans = 0;18 for(int i=1;i<=len;i++) {19 for(int j=2;j*j*i<=len;j++) {20 int J = i*j,k=i*j*j;21 if(s[i]==‘y‘&&s[J]==‘r‘&&s[k]==‘x‘) ans++;22 else if(s[i]==‘x‘&&s[J]==‘r‘&&s[k]==‘y‘) ans++;23 24 }25 }26 cout<<ans<<endl;27 28 }29 return 0;30 }
BestCoder Round #89 1001 Fxx and string
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。