92 pts WA on #1 #2 #12 #49
查看原帖
92 pts WA on #1 #2 #12 #49
398964
Muh_Yih楼主2023/11/5 20:08

参考了第一篇题解的思路,代码是自己打的

// URL: https://www.luogu.com.cn/problem/P5810
// Memory Limit: 125 MB
// Time Limit: 1000 ms
// Code by Muh_Yih with CP Editor

#include <bits/stdc++.h>
using namespace std;
int n,f[41000];
int main()
{
	cin>>n;
	if (!n)
	{
		putchar ('0');
		return 0;
	}
	f[1]=1;
	for (int i=2;i<=n+10;i++)
	{
		f[i]=max(f[i],f[i-1]+1);
		for (int u=1,k=u*2+5;k<=i;u++) k=u*2+5,f[i]=max(f[i],(u+1)*f[i-k]);
		if (f[i]>=n)
		{
			cout<<i;
			return 0;
		}
	}
	return 0;
}

评测记录

2023/11/5 20:08
加载中...