点击打开链接

dij+01背包

#include<iostream>
using namespace std;
# define inf 1000000000
int adj[101][101];
struct sta
{int dis,pow;
}st[110];int max(int a,int b)
{return a>b?a:b;
}void Dijkstra(int n,int s)
{int i,j;bool b[101];for(i=0;i<=n;i++){b[i]=0;st[i].dis=adj[s][i];}b[s]=1;for(i=0;i<n;i++){int tmp=inf,u=s;for(j=0;j<=n;j++) if(b[j]==0 && st[j].dis<tmp){tmp=st[j].dis;u=j;}b[u]=1;for(j=0;j<=n;j++)if(b[j]==0 && adj[u][j]<inf){int tt=st[u].dis+adj[u][j];if(st[j].dis>tt) st[j].dis=tt;}}
}int main()
{int i,j,t;cin>>t;while(t--){int n,m;scanf("%d%d",&n,&m);for(i=0;i<=n;i++)for(j=0;j<=n;j++){if(i!=j) adj[i][j]=inf;else adj[i][j]=0;}for(i=0;i<m;i++){int s,t,dd;scanf("%d%d",&s,&t);scanf("%d",&dd);if(dd<adj[s][t]) adj[t][s]=adj[s][t]=dd; //注意! }for(i=1;i<=n;i++)scanf("%d",&st[i].pow);Dijkstra(n,0);int bag=0,f=1,total=0;for(i=1;i<=n && f;i++) {bag+=st[i].dis;total+=st[i].pow;if(st[i].dis==inf) f=0;}if(!f) printf("impossible\n");else{int opt[100001];for(i=0;i<=bag;i++)opt[i]=0;for(i=1;i<=n;i++)   //背包 for(j=bag;j>=st[i].dis;j--)opt[j]=max(opt[j],opt[j-st[i].dis]+st[i].pow);total=total/2+1;for(i=1;i<=bag;i++)if(opt[i]>=total){printf("%d\n",i);break;}}}return 0;
}

转载于:https://www.cnblogs.com/yyf573462811/archive/2012/07/25/6365386.html

hdu 3339 In Action相关推荐

  1. hdu 3339 In Action 背包+flyod

    In Action Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://acm.hdu.edu.cn/showproblem.php?pid=333 ...

  2. HDU 3339 In Action 最短路+01背包

    题目链接: 题目 In Action Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) ...

  3. 小算法小心情:背包问题就是陪你看花开向阳

    一开始接触背包问题,总会有些困扰,无法完全理解,或者说不断地忘记所谓的公式,特神说分享,可以让许多人少走弯路,我觉得颇有道理,其实我想做的,只是努力让让算法变得看上去简单易懂一些,因为我也曾是个迷惘无 ...

  4. 杭电OJ分类题目(4)-Graph

    原题出处:HDOJ Problem Index by Type,http://acm.hdu.edu.cn/typeclass.php 杭电OJ分类题目(4) HDU Graph Theory - U ...

  5. ACM 图论入门题(附代码解释)

    目录 HDU 1869 六度分离 HDU 1874 畅通工程续 (最短路) HDU 3339 In Action (最短路+01背包) HDU 1162 Eddy's picture(prime算法) ...

  6. 【转载】图论 500题——主要为hdu/poj/zoj

    转自--http://blog.csdn.net/qwe20060514/article/details/8112550 =============================以下是最小生成树+并 ...

  7. 【HDOJ图论题集】【转】

    1 =============================以下是最小生成树+并查集====================================== 2 [HDU] 3 1213 How ...

  8. 一系列图论问题[转]

    =============================以下是最小生成树+并查集====================================== [HDU] 1213 How Many ...

  9. kk_想要学习的知识

    2018/4/27 计算几何 一.简介 计算几何属于ACM算法中比较冷门的分类,在省赛中只在前几年考察过,这两年还没有考过,而且和高精度计算一样,遇到题目主要靠套模板,因此对题意的理解至关重要,而且往 ...

  10. 图论练习题(存起来练)

    =============================以下是最小生成树+并查集======================================  [HDU]  1213 How Man ...

最新文章

  1. 除 Java 外,还有哪些编程语言蹭了 JVM 的车票?
  2. 基于Springboot实现在线考试管理系统
  3. How to use kingshard building a MySQL cluster
  4. R语言之MYSQL数据库获取及输出
  5. python和node_Python和NodeJS绘图对比
  6. idea使用junit测试_在JUnit测试中使用Builder模式
  7. LeetCode 910. 最小差值 II(贪心)
  8. e.html5.qq.com,QQ群官网-开放能力
  9. 第四章类和对象 习题答案
  10. layui 自定义request_layui中使用自定义数据格式对数据表格进行渲染
  11. js 计时器无法清除是为什么
  12. thinkphp后台_前后端分离决方案|thinkphpvueadmin 后台接口
  13. 如何修改SecureCRT中的端口转发过滤器?
  14. SVN下载及其安装配置
  15. python 恢复删除的文件_如何恢复已删除的python文件(一看就会的恢复软件)
  16. with admin option和with grant option的区别与用法
  17. 瑞吉外卖_短信验证bug
  18. React Native入门——布局实践:开发京东客户端首页(二)TabBar的构建
  19. Oracle查询表空间
  20. LQ0141 纸张尺寸【水题】

热门文章

  1. 第三组视频:基于OCFS2的双主DRBD
  2. 【读书笔记】代理模式代码(C#)
  3. 5月8号--华为正式推出新企业标识
  4. sql语句select group by order by where一般先后顺序
  5. ES+Redis+MySQL,这个高可用架构设计太顶了!
  6. ZooKeeper、Eureka、Consul 、Nacos,微服务注册中心怎么选?
  7. 分享400多道算法题,来挑战吧
  8. 图解MySQL的各种 JOIN,看完不懂来找我!
  9. 粗浅看 Tomcat系统架构分析
  10. 女程序员上班第一件事:调整IDE颜色以适配今天的衣着妆容