只包含因子2 3 5的数 51nod1010

来源:互联网 发布:软件设计师资格证书 编辑:程序博客网 时间:2024/06/06 01:21
#include <bits/stdc++.h>using namespace std;const long long  maxn = 1e18+888;long long a[100000]; int T;long long N;long long mx = maxn;int z = 0;void binarySearch(){int left = 1,right = z-1;while(left<=right){int  mid = (left+right)/2;if(a[mid]<N){left = mid + 1;}else{right = mid - 1;}}cout<<a[left]<<endl;}int main(){scanf("%d",&T);memset(a,0,sizeof(a));for(long long  i=1;i<maxn;i*=2){for(long long j =1;j*i<maxn;j*=3){for(long long k =1;j*i*k<maxn;k*=5){a[z++] = (i*j*k);}}}sort(a,a+z);while(T--){scanf("%lld",&N);binarySearch();  //cout<<*lower_bound(a+1,a+z,N)<<endl;  }return 0;}

原创粉丝点击