代码有点长,麻烦大佬耐心看完
#include <bits/stdc++.h>
using namespace std;
int ws(int n)
{
int a = 0;
while(n != 0)
{
n /= 10;
a ++;
}
return a;
}
int get1(int n)
{
return n % 10;
}
int get2(int n)
{
return n / 10 % 10;
}
int get3(int n)
{
return n / 100 % 10;
}
int get4(int n)
{
return n / 1000 % 10;
}
int get5(int n)
{
return n / 10000 % 10;
}
int get6(int n)
{
return n / 100000 % 10;
}
int get7(int n)
{
return n / 1000000 % 10;
}
int main()
{
int n, x, cnt = 0;
cin >> n >> x;
for(int i = 1 ; i <= n ; i ++)
{
if(ws(i) == 1)
if(i == x) cnt ++;
else if(ws(i) == 2)
{
if(get1(i) == x) cnt ++;
if(get2(i) == x) cnt ++;
}
else if(ws(i) == 3)
{
if(get1(i) == x) cnt ++;
if(get2(i) == x) cnt ++;
if(get3(i) == x) cnt ++;
}
else if(ws(i) == 4)
{
if(get1(i) == x) cnt ++;
if(get2(i) == x) cnt ++;
if(get3(i) == x) cnt ++;
if(get4(i) == x) cnt ++;
}
else if(ws(i) == 4)
{
if(get1(i) == x) cnt ++;
if(get2(i) == x) cnt ++;
if(get3(i) == x) cnt ++;
if(get4(i) == x) cnt ++;
}
else if(ws(i) == 5)
{
if(get1(i) == x) cnt ++;
if(get2(i) == x) cnt ++;
if(get3(i) == x) cnt ++;
if(get4(i) == x) cnt ++;
if(get5(i) == x) cnt ++;
}
else if(ws(i) == 6)
{
if(get1(i) == x) cnt ++;
if(get2(i) == x) cnt ++;
if(get3(i) == x) cnt ++;
if(get4(i) == x) cnt ++;
if(get5(i) == x) cnt ++;
if(get6(i) == x) cnt ++;
}
else if(ws(i) == 7)
{
if(get1(i) == x) cnt ++;
if(get2(i) == x) cnt ++;
if(get3(i) == x) cnt ++;
if(get4(i) == x) cnt ++;
if(get5(i) == x) cnt ++;
if(get6(i) == x) cnt ++;
if(get7(i) == x) cnt ++;
}
}
cout << cnt;
return 0;
}