【51NOD 1010】只包含因子2 3 5的数

原创 2018年04月15日 17:14:40

基准时间限制:1 秒 空间限制:131072 KB 分值: 10 难度:2级算法题
 收藏
 关注
K的因子中只包含2 3 5。满足条件的前10个数是:2,3,4,5,6,8,9,10,12,15。
所有这样的K组成了一个序列S,现在给出一个数n,求S中 >= 给定数的最小的数。
例如:n = 13,S中 >= 13的最小的数是15,所以输出15。
Input
第1行:一个数T,表示后面用作输入测试的数的数量。(1 <= T <= 10000)
第2 - T + 1行:每行1个数N(1 <= N <= 10^18)
Output
共T行,每行1个数,输出>= n的最小的只包含因子2 3 5的数。
Input示例
5
1
8
13
35
77
Output示例
2
8
15
36
80

直接先打表然后二分查找即可,注意数据范围一定要开的大一些

#include<iostream>
#include<algorithm>
using namespace std;
long long MAXN=1e18+100;
long long a[1000005];
int d=0;
void dabiao()
{
	long long i,j,k;
	for(i=1;i<MAXN;i*=2)
	{
		for(j=1;j*i<MAXN;j*=3)
		{
			for(k=1;i*j*k<MAXN;k*=5)
			{
				a[d++]=i*j*k;
			}
		}
	}
}
int main()
{
	dabiao();
	sort(a,a+d);
	long long n;
	int t;
	cin>>t;
	while(t--)
	{
		cin>>n;
	    cout<<*lower_bound(a+1,a+d,n)<<endl;
	}
	return 0;
}

51nod 1010 只包含因子2 3 5的数 (打表+二分)

K的因子中只包含2 3 5。满足条件的前10个数是:2,3,4,5,6,8,9,10,12,15。 所有这样的K组成了一个序列S,现在给出一个数n,求S中 >= 给定数的最小的数。 例如:n = ...
  • h1021456873
  • h1021456873
  • 2015-10-26 21:05:01
  • 1115

51NOD 1010 只包含因子2 3 5的数(二分 + 预处理)

传送门K的因子中只包含2 3 5。满足条件的前10个数是:2,3,4,5,6,8,9,10,12,15。 所有这样的K组成了一个序列S,现在给出一个数n,求S中 >= 给定数的最小的数。 例如:n...
  • qingshui23
  • qingshui23
  • 2016-05-29 20:13:08
  • 4501

51nod 1010 只包含因子2 3 5的数

题目链接:https://www.51nod.com/onlineJudge/questionCode.html#!problemId=1010 题目: K的因子中只包含2 3 5。满足条...
  • zchahaha
  • zchahaha
  • 2016-06-08 09:46:38
  • 666

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

#include using namespace std; const long long maxn = 1e18+888; long long a[100000]; int T; long...
  • FrankAx
  • FrankAx
  • 2017-06-30 15:54:14
  • 262

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

1010 只包含因子2 3 5的数 基准时间限制:1 秒 空间限制:131072 KB 分值: 10 难度:2级算法题  K的因子中只包含2 3 5。满足条件的前10个数是:2,3,4,5,6,8...
  • acm_hmj
  • acm_hmj
  • 2016-04-25 22:46:27
  • 888

1010 只包含因子2 3 5的数(打表+二分)

题目链接: 1010 只包含因子2 3 5的数(打表+二分) 题目描述: K的因子中只包含2 3 5。满足条件的前10个数是:2,3,4,5,6,8,9,10,12,15。 所有这样的K...
  • Dextrad_ihacker
  • Dextrad_ihacker
  • 2016-04-25 15:42:32
  • 1457

51nod 1010 只包含因子2 3 5的数 【容器 +二分 】

这道题 看了网上全是 一种解法,就没再看,想自己用容器模拟出来, 可是没想到 自己用的不是很熟练, 有思路,但写不出来,因此 ,我又借鉴了 另一位高人的博客,(这里 入门经典里面也有 这种类似题 方法...
  • m0_37719760
  • m0_37719760
  • 2017-10-22 20:21:13
  • 136

问题 : 只包含因子2 3 5的数

题目描述 K的因子中只包含2 3 5。满足条件的前10个数是:2,3,4,5,6,8,9,10,12,15。 所有这样的K组成了一个序列S,现在给出一个数n,求S中 >= 给定数的最小的数。 ...
  • qq_36172505
  • qq_36172505
  • 2017-08-13 10:30:58
  • 260

寻找丑数,把只包含因子2、3和5的数称作丑数(Ugly Number)

题目: 把只包含因子2、3和5的数称作丑数(Ugly Number)。例如6、8都是丑数,但14不是,因为它包含因子7。 习惯上我们把1当做是第一个丑数。求按从小到大的顺序的第N个丑数。 思路: 所...
  • sinat_28296297
  • sinat_28296297
  • 2017-09-25 12:39:32
  • 222

丑数--中包含因子2、 3 、 5 的数称为丑数

丑数:只包含因子 2、 3、 5 的数称为丑数,例如 2 、 3 、 4 、 5 都是都是丑数,但是 7 、 14  不是丑数。现在求从小到大的第 num 个丑数,我们把 1 作为第一个丑数。 ——...
  • qq_34528297
  • qq_34528297
  • 2017-06-04 22:33:43
  • 561
收藏助手
不良信息举报
您举报文章:【51NOD 1010】只包含因子2 3 5的数
举报原因:
原因补充:

(最多只允许输入30个字)