老规矩 先贴我的代码
#include<iostream>
#include<sstream>
using namespace std;
int main()
{
int n;
cin>>n;
string s[n+1];
int x;
cin>>x;
int times=0;
for(int i=1;i<=n;i++)
{
stringstream ss;
ss<<i;
ss>>s[i];
for(int j=0;j<s[i].length();j++)
{
int a=s[i][j]-'0';
if(a==x)
times++;
}
}
cout<<times<<endl;
return 0;
}
思路很简单 没什么技巧 就直接循环从1遍历到n 每个都先转化成字符串形式再利用s[i][j]-‘0’转化成数字一位一位比较 相等就times+1