参考代码:
/*超时!!!!! #include<iostream> using namespace std; int main() { int k; char c1,c2; int l=0,r=0,ans=0; string s; cin>>k; cin>>s; cin>>c1>>c2; for(l=0;l<=s.length()-4;l++) { if(s[l]!=c1) continue; for(r=l+k-1;r<=s.length()-1;r++) { if(s[l]!=c1) break; if(s[r]!=c2) continue; if(s[l]==c1&&s[r]==c2&&r-l>=k-1) { ans++; } } } cout<<ans; return 0; } */ //找末尾c2前面有几个符合条件的c1。 #include<iostream> using namespace std; int main() { int k; char c1,c2; long long l=0,r=0,ans=0,n=0; string s; cin>>k; cin>>s; cin>>c1>>c2; for(int i=0;i<s.length();i++) { if(i-k+1>=0&&s[i-k+1]==c1) n++; if(s[i]==c2) { ans+=n; } } cout<<ans; return 0; }
0.0分
13 人评分
点我有惊喜!你懂得!浏览:1222 |
2004年秋浙江省计算机等级考试二级C 编程题(2) (C语言代码)浏览:670 |
C语言训练-斐波纳契数列 (C语言代码)浏览:1174 |
C语言训练-求素数问题 (C语言代码)浏览:1457 |
十->二进制转换 (C语言代码)浏览:1291 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:643 |
Pascal三角 (C语言代码)浏览:1188 |
C语言程序设计教程(第三版)课后习题8.3 (C语言代码)浏览:717 |
蛇行矩阵 (C语言代码)浏览:753 |
C语言程序设计教程(第三版)课后习题7.3 (C语言代码)浏览:1195 |