uva11400 动态规划
2024-09-14 03:21:20
没种电压灯泡要么全换,要么不换。状态d(i)表示前i种灯泡的最低价格。
转移方程:
dp[i]=min(dp[i],dp[j]+(s[i]-s[j])*d[i].c+d[i].k);
AC代码:
#include<cstdio> #include<algorithm> using namespace std; const int maxn=1000+5; const int INF=1<<30; struct node{ int v,k,c,l; bool operator < (const node&p) const{ return v<p.v; } }; node d[maxn]; int s[maxn],dp[maxn]; int main(){ int n; while(scanf("%d",&n)==1&&n){ for(int i=1;i<=n;++i){ scanf("%d%d%d%d",&d[i].v,&d[i].k,&d[i].c,&d[i].l); } sort(d+1,d+n+1); s[0]=0; for(int i=1;i<=n;++i){ s[i]=d[i].l+s[i-1]; } for(int i=1;i<=n;++i){ dp[i]=INF; for(int j=0;j<i;++j){ dp[i]=min(dp[i],dp[j]+(s[i]-s[j])*d[i].c+d[i].k); } } printf("%d\n",dp[n]); } return 0; }
如有不当之处欢迎指出!
最新文章
- stopping NetworkManager daemon failed
- SQL入门经典(二) 之数据库基本查询、添加、更新和删除
- Java 导出EXCEL
- 写essay和research paper必用的17个网站
- httpd设置HTTPS双向认证
- “Cache-control”常见的取值有private、no-cache、max-age、must-revalidate等
- [iOS] Baritem 添加一项
- 本地计算机上的OracleOraDb11g_home2TNSListener服务启动又停止了。
- ORA-20000: ORU-10027: buffer overflow, limit of 10000 bytes
- json格式字符串与java.util.Map的互转(借助于jackson.jar)
- [Python Study Notes]CS架构远程访问获取信息--SERVER端v2.0
- Linq SelectMany 交叉连接
- Trie for string LeetCode
- 微博第三方登录使用social_django实现显示登陆的用户名
- np.cumsum()函数和正则表达式的含义
- Luogu P2257 YY的GCD
- (转载)spring RestTemplate用法详解
- Hinton“深度学习之父”和“神经网络先驱”,新论文Capsule将推翻自己积累了30年的学术成果时
- 【redis】linux上的安装与配置(详细图解)
- 8-13 Just Finish it up uva11093