菜鸟杯” hdu 4151 I The Special Number

来源:互联网 发布:crontab 执行php延迟 编辑:程序博客网 时间:2024/05/18 20:05

 暴力预处理所有数,,然后二分查找,,查找时包含负数,,,,

#include<iostream>#include<string.h>using namespace std;int a[10000000];int b[10];int main(){ int i,j; int tot=1;  for(i=1;i<=10000000;++i)  { memset(b,0,sizeof(b));    j=i;while(j){ if(b[j%10]!=1) b[j%10]=1;  else break;  j/=10;}if(j==0) a[tot++]=i;  }  int n;  while(cin>>n)  { if(n<=1) {cout<<"0"<<endl;continue;}  int st=1,ed=tot-1;//这一点需要注意在所有符合的数中进行查找,,    int res;    while(st<=ed){  int mid=(st+ed)/2;if(a[mid]<n) {res=mid;st=mid+1;}else ed=mid-1;}cout<<res<<endl;  }return 0;}

原创粉丝点击