![[C语言]给你一个字符串s,统计其子序列“CHN”的个数。,第1张 [C语言]给你一个字符串s,统计其子序列“CHN”的个数。,第1张](/aiimages/%5BC%E8%AF%AD%E8%A8%80%5D%E7%BB%99%E4%BD%A0%E4%B8%80%E4%B8%AA%E5%AD%97%E7%AC%A6%E4%B8%B2s%EF%BC%8C%E7%BB%9F%E8%AE%A1%E5%85%B6%E5%AD%90%E5%BA%8F%E5%88%97%E2%80%9CCHN%E2%80%9D%E7%9A%84%E4%B8%AA%E6%95%B0%E3%80%82.png)
牛客初学训练营:BC119小乐乐与字符串
子序列的定义:存在任意下标a < b < c,那么“s[a]s[b]s[c]”就构成s的一个子序列。如“ABC”的子序列有“A”、“B”、“C”、“AB”、“AC”、“BC”、“ABC”
思路:循环判断每一个元素
同时用c_num记录遇到多少个C,遇到一个C,c_num就+1。
用ch_couple记录有多少对CH,遇到一个H,ch_couple就+c_num。
用count记录有多少对CHN,遇到一个N,count就+ch_couple。
#include#include int main() { int count = 0;//统计子序列个数 char s[8000] = { 0 }; scanf("%s", s);//将字符串存入数组 int sz = strlen(s);//计算字符串长度 int c_num= 0;//统计字符'C'的个数 int ch_couple = 0;//统计在遇到'N'前,前面有多少对'CH'。 for (int i=0;i 欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)