题解 | 记数问题

记数问题

https://www.nowcoder.com/practice/28b2d9f2bf2c48de94a1297ed90e1732

#include<bits/stdc++.h>
using namespace std;
int is_have_num(string s,char num){//用字符串来判断有几个目标数字
	int counts=0;
	for(int i=0;i<(int)s.size();i++){
		if(s[i]==num) counts++;
	}
	return counts;//返回这个数(字符串)里面有几个目标数字
}
int main(){
	ios::sync_with_stdio(false);
	cin.tie(nullptr);
	int n;char num;
	cin>>n>>num;
	int cnt=0;
	for(int i=1;i<=n;i++){
		string t=to_string(i);//由于遍历的i是int,所以转化为string才能使用前面写的函数
		cnt+=is_have_num(t,num);//每个数含有的目标个数累加起来
	}
	cout<<cnt<<endl;//输出总计
}

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务