結果

問題 No.1664 Unstable f(n)
ユーザー publflpublfl
提出日時 2021-09-03 21:26:28
言語 C++14
(gcc 13.3.0 + boost 1.87.0)
結果
AC  
実行時間 3 ms / 2,000 ms
コード長 496 bytes
コンパイル時間 569 ms
コンパイル使用メモリ 32,000 KB
実行使用メモリ 5,248 KB
最終ジャッジ日時 2024-12-15 09:53:16
合計ジャッジ時間 2,122 ms
ジャッジサーバーID
(参考情報)
judge1 / judge2
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 38
権限があれば一括ダウンロードができます

ソースコード

diff #

#include <stdio.h>

int main()
{
	long long int a;
	scanf("%lld",&a);
	
	long long int ans = a;
	for(int i=2;i<=30;i++)
	{
		long long int min = 1, max = a;
		long long int p = 1;
		while(min<=max)
		{
			long long int h = (min+max)/2;
			long long int b = a;
			for(int j=1;j<=i;j++) b/=h;
			if(b==0) max = h-1;
			else
			{
				p = h;
				min = h+1;
			}
		}
		long long int t = 1;
		for(int j=1;j<=i;j++) t*=p;
		long long int s = (a-t) + p + i;
		ans = ans<s?ans:s;
	}
	printf("%lld",ans);
}
0