记数问题 用 vector +count
对于这个问题 要统计0~9 出现的个数。
可以分为两种情况:
一,数字小于10
可以直接push_back();放入vector里。
二,数字大于10
首先想到的就是把数字一位一位 拆分出来 放到vector 最后统计个数。
拆分个位:n=n%10;
进位 :n/=10;
详细代码如下
#include<bits/stdc++.h>
using namespace std;
int main()
{
int n,m,k;
cin>>n>>m;
vector<int>v;
for(int i=1;i<=n;i++)
{ if(i<10)
v.push_back(i);
else{ k=i;
while(k!=0)
{
v.push_back(k%10);
k/=10;
}
}
}
cout<<count(v.begin(),v.end(),m);
return 0;
} 
京公网安备 11010502036488号