列表

详情


NC14696. 栗酱的不等式

描述

有不等式yx3n,已知y为正整数,x为大于1的正整数,问当xy的解数量刚好为m的时候n的最小值,如果不存在输出 -1

输入描述

多组数据读入。
每组数据一个数字m,如题所示。

输出描述

每组数据输出一行,输出答案。

示例1

输入:

1

输出:

8

说明:

当方案恰好只有一种的时候,n的最小值为8,此时y=1,x=2。

原站题解

上次编辑到这里,代码来自缓存 点击恢复默认模板

C++11(clang++ 3.9) 解法, 执行用时: 657ms, 内存消耗: 492K, 提交时间: 2020-05-27 13:29:05

#include<bits/stdc++.h>
using namespace std;

int main()
{
	long long i,j,l,r,mid,ans,m;
	while(~scanf("%lld",&m))
	{
		ans=-1;
		for(l=8,r=1e18;l<=r;)
		{
			mid=(l+r)>>1;
			for(j=0,i=2;i*i*i<=mid;i++)j+=mid/(i*i*i);
			if(j>m)r=mid-1;
			else if(j==m)ans=mid,r=mid-1;
			else l=mid+1;
		}
		printf("%lld\n",ans);
	}
	return 0;
}

上一题