描述
一个正整数如果任何一个数位小于等于右边相邻的数位,则称为一个数位递增数。
例如:
1135 是一个数位递增数。
1024 不是一个数位递增数。
输入
输入一个正整数 n(10 < n < 10001)。
输出
输出 10 到 n (包含 10 和 n)中有多少个数位递增数。
输入样例 1
15输出样例 1
5#include <iostream> #include <algorithm> using namespace std; bool cmp(int n){ int m=n,x,y=0,a[11],b[11]; while(m!=0){ x=m%10; m/=10; a[y++]=x; } for(int i=0;i<y;i++){ b[i]=a[y-i-1]; } sort(a,a+y); for(int i=0;i<y;i++){ if(a[i]!=b[i]) return false; } return true; } int main(){ int n,sum=0; cin>>n; for(int i=10;i<=n;i++){ if(cmp(i)) sum++; } cout<<sum<<endl; return 0; }
如果有帮助,能不能点一个赞或关注呢?
数位递增数
于 2023-06-22 10:49:02 首次发布