现学的临近表

广搜的过程中不断更新点剩余电量的最大值

本来想找我的参考blog的,怎么搜不到了呢!那就不好意思啦

#include<iostream>
#include<cstdio>
#include<queue>
using namespace std;
#define N 50005
#define inf 0.0
struct edge{int t;int w;edge *next;
}*lisk[N];
int vis[N];
double pa[N];
void add(int u,int t,int w){edge *tmp=new edge;tmp->t=t;tmp->w=w;tmp->next=lisk[u];lisk[u]=tmp;
}
void bfs(int i,int y){queue<int > q;q.push(i);while(!q.empty()){int p=q.front();q.pop();double sum=pa[p];edge *tmp=lisk[p];while(tmp!=NULL){double cost=sum*(100-tmp->w)/100.0;//           cout<<p<<" "<<tmp->t<<" "<<cost<<endl;if(pa[tmp->t]<cost){q.push(tmp->t);pa[tmp->t]=cost;}tmp=tmp->next;}}
}
int main(){int n,t,s,m;cout<<inf<<endl;scanf("%d",&n);for(int i=0;i<=n;i++)lisk[i]=NULL;for(int i=1;i<=n;i++){pa[i]=inf;vis[i]=0;scanf("%d",&m);while(m--){//           cout<<t<<endl;scanf("%d%d",&t,&s);add(i,t,s);}}
//    edge *tmp=lisk[1];
//    while(tmp!=NULL){
//        cout<<tmp->t<<" ";
//        tmp=tmp->next;
//    }
//    cout<<endl;
//    cout<<n<<endl;int x,y;double sum;scanf("%d%d%lf",&x,&y,&sum);pa[x]=sum;vis[x]=1;bfs(x,y);if(pa[y]==inf) printf("IMPOSSIBLE!\n");else printf("%.2lf\n",sum-pa[y]);return 0;
}

hdu 4318 Power transmission 临接表 广搜 多校联合赛(二) 第九题相关推荐

  1. [HDU] 1181 变形课-简单建模后广搜

    题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=1181 方法:以所有咒语看做一条起点为首字母,终点为末字母的有向边来建立有向图.然后在图中判断目标路径 ...

  2. HDU 2019 Multi-University Training Contest 1 杭电2019多校联合训练赛 第一场 1001 Blank (6578)

    HDU 2019 Multi-University Training Contest 1 杭电2019暑期多校集训第一场 1001 Blank (6578) Problem Description T ...

  3. HDU 5762 Teacher Bo (鸽笼原理) 2016杭电多校联合第三场

    题目:传送门. 题意:平面上有n个点,问是否存在四个点 (A,B,C,D)(A<B,C<D,A≠CorB≠D)使得AB的横纵坐标差的绝对值的和等于CD的横纵坐标差的绝对值的和,n<1 ...

  4. HDU多校联合赛(1007 Magical Forest)模拟题

    题目: Problem Description There is a forest can be seen as N * M grid. In this forest, there is some m ...

  5. 广搜(bfs)和 深搜(dfs)(新手)

    广搜(bfs)和 深搜(dfs)(新手) 先从广搜说起(bfs) 广搜,字面感觉就是广面的搜索,其实就是这样的,我认为可以把广度搜索看成一步步的蔓延,但是不一定要遍历到所有的元素,因为一旦你达到了边界 ...

  6. python二维表转一维表_Excel、Power BI及Python系列:使用Power BI转化一维表与二维表...

    上篇文章,老海分享了如何使用Excel完成一维表与二维表之间的转化 本篇老家继续分享使用Power BI来完成一维表与二维表的转化操作. 可能很多小伙伴,不太了解Power BI Power BI是什 ...

  7. [HDU] 2612 Find a way - 用单源最短论经模拟的简单广搜

    题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=2612 方法:其实就是从两个点分别探寻单源最短路径,两个点到同一个目标位置的最短路径都求出来,相加,然 ...

  8. Hdu 1072 【广搜】.cpp

    题意: 给出一个n*m的矩阵, 0 表示不可走 1 表示可走 2 表示起点 3 表示终点 4 表示可走且走到这一步可以满血 某人一开始有6滴血,走一步少一滴..到0就死了.. 可以走到4的位置满血再走 ...

  9. HDU 4548 美素数(打表)

    HDU  4548  美素数(打表)解题报告 题目链接:http://acm.hust.edu.cn/vjudge/contest/view.action?cid=88159#problem/H 题目 ...

  10. power bi 创建空表_使用Power BI创建足球热图

    power bi 创建空表 When I watched the 2018 FIFA World Cup Russia match, at the end of the match I saw a v ...

最新文章

  1. jpa vue管理系统_在JPA 2.1中使用@Convert正确完成映射枚举
  2. JavaSE(六)——Object类、克隆方法
  3. android 双 webview,Android webview加载页面
  4. MySQL常用存储引擎之Archive
  5. 单节点配置SecondaryNameNode
  6. python装饰器解析_Python 装饰器解析
  7. MySQL 客户端命令
  8. linux传几百G文件,为什么我不推荐另外2种快速传几百G文件的方法!
  9. C/C++获取当前路径、获取任意pid完整路径(readlink()函数)
  10. 潭州课堂25班:Ph201805201 django框架 第五课 自定义简单标签,包含标签,模型类创建,梳理类创建 (课堂笔记)...
  11. linux 屏幕输出 高亮_通过printf设置Linux终端输出的颜色和显示方式
  12. unicode编码表_关于编码
  13. “独裁者”Google:开发者别无他选!| 极客头条
  14. 如何自定义已有架构的css样式
  15. linux bin文件固件,电信物联网平台OTA软件升级bin文件包制作及上传
  16. Could not mount the media/drive ‘VBoxGuestAdditions.iso‘解决方案
  17. [ALAPI]免费聚合视频无水印接口分享
  18. 使用Python开发游戏运行脚本(三)图片查找
  19. 广告联盟中CPC CPA CPM CPS CPV分别是什么意思
  20. unity3d通过粒子系统制作火焰效果

热门文章

  1. easyui datagrid 去掉外边框及行与行之间的横线标题字体
  2. 求众数leetcode(169)+投票算法
  3. 转:oracle常见重要视图-v$sql,v$sql_plan,v$sqltext,v$sqlarea,v$sql_plan_statistcs
  4. 服务器解析请求的基本原理
  5. shop--8.商品类别--批量操作--添加(前端)
  6. C#: switch语句的重构『网摘』
  7. 【语言处理与Python】5.7如何确定一个词的分类
  8. (日常搬砖)数据集标注格式转换:txt转xml(VOC格式)
  9. Openresty 安装、源码编译,增加WAF模块naxsi
  10. iOS底层探索之LLVM(一)——初识LLVM