博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
POJ 2248【加法链】
阅读量:4537 次
发布时间:2019-06-08

本文共 1043 字,大约阅读时间需要 3 分钟。

描述

 

 

  对于一个数列a1,a2......am,其中a1 = 1,am = n , a1 < a2 < ... < am-1 < am 对于每个k(2<=k<=m),ak=ai+aj (1 <= i, j <= k-1),现给定n的值,要求m的最小值.

输入输出格式

输入

  整个测试有多组数据,每行一个数字N,N<=100,测试以数字零代表结束。

输出

  输出有多行,每行一个数字,代表你的结果

输入输出样例

输入样例1
571215770
输出样例1
45569

解题思路

  咳咳,这道题和有点像(几乎一模一样)只需要注意换行(我当初没换爆了四次)再加一个while输入就行,所以,去看看吧,有思路的。

题解

1 #include
2 using namespace std; 3 int n,ans=999999; 4 int dp[1001]; 5 void dfs(int dep,int pre) 6 { 7 int sum=-1; 8 int p=pre; 9 while(p<=n) 10 {11 p*=2;12 sum++;13 }14 if(dep+sum>=ans)return;15 for(int i=dep-1;i>=1;i--)16 {17 for(int j=i;j>=1;j--)18 {19 int num=dp[i]+dp[j];20 if(num>pre&&num<=n)21 {22 dp[dep]=num;23 if(num==n&&dep
>n)36 {37 memset(dp,0,sizeof(dp));38 if(n==0)break;39 ans=99999;40 if(n<=2)41 {42 cout<
<

 

转载于:https://www.cnblogs.com/hualian/p/11164147.html

你可能感兴趣的文章
模态窗口缓存无法清除怎么办? 在地址上加个随机数吧"&rd=" + new Date().getTime()
查看>>
阿里的weex框架到底是什么
查看>>
Tesis enDYNA
查看>>
FxZ,C#开发职位面试测试题(30分钟内必须完成)
查看>>
[HNOI2007]分裂游戏
查看>>
Pandas基本介绍
查看>>
当拖动滚动条时 出现小图标
查看>>
LeetCode "Shortest Word Distance II"
查看>>
绕过阿里云防火墙继续扫描探测和SQL注入
查看>>
ln 软链接与硬链接
查看>>
JQuery ajax请求一直返回Error(parsererror)
查看>>
利用POI 技术动态替换word模板内容
查看>>
LeetCode No.168
查看>>
纪录jmeter loop controller 使用中的一个坑
查看>>
spring读取配置文件,且获取bean实例
查看>>
Xcode7 免证书真机测试
查看>>
史上最简单MySQL教程详解(基础篇)之数据类型
查看>>
802.11 帧封装细节
查看>>
WPF中Style文件的引用——使用xaml代码或者C#代码动态加载
查看>>
C#最佳工具集合:IDE、分析、自动化工具等
查看>>