目录
链接:
红题,不多讲
题目描述
小 K 同学向小 P 同学发送了一个长度为 88 的 01 字符串来玩数字游戏,小 P 同学想要知道字符串中究竟有多少个 11。
注意:01 字符串为每一个字符是 00 或者 11 的字符串,如“101”(不含双引号)为一个长度为 33 的 01 字符串。
输入格式
输入文件只有一行,一个长度为 88 的 01 字符串 ss。
输出格式
输出文件只有一行,包含一个整数,即 01 字符串中字符 \bm 11 的个数。
输入输出样例
输入 #1复制
00010100
输出 #1复制
2
输入 #2复制
11111111
输出 #2复制
8
说明/提示
【输入输出样例 1 说明】
该 01 字符串中有 22 个字符 11。
【输入输出样例 2 说明】
该 01 字符串中有 88 个字符 11。
【数据规模与约定】
- 对于 20\%20% 的数据,保证输入的字符全部为 00。
- 对于 100\%100% 的数据,输入只可能包含字符 00 和字符 11,字符串长度固定为 88。
又双叒叕是水题!
代码(全AC)
代码1:超级蒟蒻做法(内存有亿点点的大,不推荐)
#include<bits/stdc++.h>
using namespace std;
int a,sum=0;
int main()
{
scanf("%1d",&a);sum+=a;
scanf("%1d",&a);sum+=a;
scanf("%1d",&a);sum+=a;
scanf("%1d",&a);sum+=a;
scanf("%1d",&a);sum+=a;
scanf("%1d",&a);sum+=a;
scanf("%1d",&a);sum+=a;
scanf("%1d",&a);sum+=a;
cout<<sum;
return 0;
}
代码2(占用小,推荐,内有for循环)
#include<bits/stdc++.h>
using namespace std;
int a,sum=0;
int main()
{
for(int i=1;i<=8;i++)
{
scanf("%1d",&a);
if(a==1)
sum++;
}
cout<<sum;
return 0;
}
代码3(内有数组+for循环)
#include<bits/stdc++.h>
using namespace std;
int a[9],sum=0;
int main()
{
for(int i=1;i<=8;i++)
{
scanf("%1d",a+i);
if(a[i]==1)
sum++;
}
cout<<sum;
return 0;
}
本章完,散会(1145字 半恼)