青少年编程知识记录 codecoming

【题解】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;  }



(adsbygoogle = window.adsbygoogle || []).push({});

作者:亿万年的星光 分类:题解目录 浏览: