【题解】AC
4.AC(ac.cpp)
【问题描述】
小明获得了一行字符串,他想知道在不改变字符顺序的情况下,从前到后最多能组合出多少个ac? (a和c的位置可以不连续)比如:字符串为addcadcc,可以找到5个ac,即下标组合为(0,3)、 (0,6)、(0,7)、(4,6)、(4,7)。
【输入格式】
仅一行字符串(只包含字母)。
【输出格式】
一个整数,字符串中找到ac的数量。
【输入样例】
addcadcc
【输出样例】
5
【数据规模和约定】
50%的数据:0<字符串长度<=1e3;
100%的数据:0<字符串长度<=1e6;
【题目分析】
直接双重for循环筛选符合条件的数值比较快
【参考代码】
#include<bits/stdc++.h> using namespace std; int main(){ char s[100000]; int sum1=0; cin>>s; for(int i=0;i<strlen(s)-1;i++){ for(int j=i+1;j<strlen(s);j++){ if(s[i]=='a' && s[j]=='c'){ sum1++; } } } cout<<sum1; return 0; }
扫描二维码推送至手机访问。
版权声明:本文由青少年编程知识记录发布,如需转载请注明出处。