存量房交易网站建设,wordpress+评论,国内外网站开发有哪些技术,网站开发和程序开发的却别题目描述
一个长度为 l l l 的字符串中被反复贴有 boy 和 girl 两单词#xff0c;后贴上的可能覆盖已贴上的单词#xff08;没有被覆盖的用句点表示#xff09;#xff0c;最终每个单词至少有一个字符没有被覆盖。问贴有几个 boy 几个 girl#xff1f;
输入格式
一行被…题目描述
一个长度为 l l l 的字符串中被反复贴有 boy 和 girl 两单词后贴上的可能覆盖已贴上的单词没有被覆盖的用句点表示最终每个单词至少有一个字符没有被覆盖。问贴有几个 boy 几个 girl
输入格式
一行被反复贴有 boy 和 girl 两单词的字符串。
输出格式
两行两个整数。第一行为 boy 的个数第二行为 girl 的个数。
样例 #1
样例输入 #1
......boyogirlyy......girl.......样例输出 #1
4
2提示
数据保证 3 ≤ l ≤ 255 3\le l\le255 3≤l≤255字符串仅仅包含如下字符 .bgilory \texttt{.bgilory} .bgilory。
1.题目分析
输入一段字符串分别统计boy和girl出现的个数根据题意两个单词可以相互覆盖但至少有一个单词未被覆盖。 值得一提的是这道题是只要有单词的一个字符就能够计数。
2.题目思路
将原文存储字符串数组两个单词也分别存入数组先遍历字符串数组取得每一个字符 在循环中遍历boy或者girl之前取得的字符以及后单词长度位的字符与单词数组的每一个字符进行比较满足一个则标记为1内层循环结束 判断标记是否为1是的话计数器加一 值得注意的是进入下一轮循环时需要将标记变量重置为0. 最后分别打印两个单词的数量。
3.代码实现
#include stdio.h
#include string.hint main(){char str[255];scanf(%s,str);//存放男女相关的字符char boy[] boy;char girl[] girl;//boy和girl的数量 m nint m,n;m 0;n 0;//标记变量int flag;//计算boy个数for (int i 0; i strlen(str); i) {flag 0;for (int j 0; j strlen(boy); j) {//有一个字符满足则算作一次覆盖if (str[ij] boy[j]){flag 1;}}if (flag 1){m;}}//计算girl个数for (int i 0; i strlen(str); i) {flag 0;for (int j 0; j strlen(girl); j) {if (str[ij] girl[j]){flag 1;}}if (flag 1){n;}}printf(%d\n,m);printf(%d\n,n);return 0;
}