链接:登录—专业IT笔试面试备考平台_牛客网
来源:牛客网
从前,在一个森林里,有一个神秘的魔法师,由于她拥有魔法,她在这个事件存活了无数年。有一天你误入森林,被魔法师抓住。她答应你只要你回答出她的一个问题,就可以放了你。如果一个正整数每个位置都是由相同的数字组成,如 11,22,44444 等,那么我们就称这样的数字为美丽数字。魔法师会给你一个正整数 n,请你告诉她从 1 到 n 中有多少个美丽数字。
输入描述:
输入仅一行,为正整数n(1≤n≤1000000000)。
输出描述:
输出一个整数,为从 1−n 中美丽数字的个数。
示例1
输入
复制10
10
输出
复制9
9
说明
从1到10中的美丽数字有1,2,3,4,5,6,7,8,9,共9个
以下是我的蛮力法代码:
#include <iostream>
using namespace std;
int main(){
int x;
cin>>x;
int n=0;
for(int i=1;i<=x;i++){
int flag =1;
for(int m=i;m!=0;m/=10)
if(m%10!=(i%10)) {flag=0;break;}
if(flag) n++;
}
cout<<n<<endl;
return 0;
}