博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Dwarf Tower
阅读量:4699 次
发布时间:2019-06-09

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

 

骇人听闻的数据:

源代码:#include
#include
using namespace std;struct Node{ int T,X,Y;}Edge[100001];int n,m,i[10001];int main(){ scanf("%d%d",&n,&m); for (int a=1;a<=n;a++) scanf("%d",&i[a]); for (int a=1;a<=m;a++) { scanf("%d%d%d",&Edge[a].T,&Edge[a].X,&Edge[a].Y); i[Edge[a].T]=min(i[Edge[a].X]+i[Edge[a].Y],i[Edge[a].T]); } for (int a=m;a>=1;a--) i[Edge[a].T]=min(i[Edge[a].X]+i[Edge[a].Y],i[Edge[a].T]); printf("%d",i[1]); return 0;}/* AC就是AC了,没有理由。 数据水也不至于水到这种地步吧!*/

 

75分乱搞DFS:

源代码:#include
#include
#include
using namespace std;struct Node{ int X,Y; Node(int t1,int t2) { X=t1; Y=t2; }};vector
List[10001];int m,n,i[10001];bool Vis[10001]={
0};void DFS(int t) //倒序记忆化DFS。{ Vis[t]=true; int L=List[t].size(); for (int a=0;a

 

SPFA正解:

源代码:#include
#include
#include
#include
#define LL long longusing namespace std;struct Node{ LL X,Y; Node(LL t1,LL t2) { X=t1; Y=t2; }};queue
Q;vector
List[10001];LL m,n,i[10001];bool In[10001];int main() //挺动脑子的一道题。{ scanf("%lld%lld",&n,&m); for (LL a=1;a<=n;a++) scanf("%lld",&i[a]); for (LL a=1;a<=m;a++) { LL t,t1,t2; scanf("%d%d%d",&t,&t1,&t2); List[t1].push_back(Node(t,t2)); List[t2].push_back(Node(t,t1)); } for (LL a=1;a<=n;a++) { Q.push(a); In[a]=true; } while (!Q.empty()) //可以朦朦胧胧地看做是某一个神秘点到节点的距离,转换成一个类似于SPFA的BFS,不断更新就好了。 { LL t=Q.front(); Q.pop(); In[t]=false; for (LL a=0;a

转载于:https://www.cnblogs.com/Ackermann/p/6051796.html

你可能感兴趣的文章
Oracle EBS 查看执行计划
查看>>
获取 Transaction Source
查看>>
iOS设计模式汇总
查看>>
win7 64下安装mysql-python报错的解决办法
查看>>
【Oracle 集群】ORACLE DATABASE 11G RAC 知识图文详细教程之集群概念介绍(一)
查看>>
Java内部类
查看>>
SQL Server 2008杀数据库连接
查看>>
ExtJs自学教程(1):一切从API開始
查看>>
MfC 进度条控件
查看>>
java推断字符串是否为乱码
查看>>
设计牛人——设计入门答疑番外篇有感
查看>>
JavaScript基础介绍
查看>>
H5 以及 CSS3
查看>>
Potted Flower(线段树+dp)
查看>>
Angular之双向数据绑定(上)
查看>>
20155307 2016-2017-2 《Java程序设计》第4周学习总结
查看>>
TimeJob权限问题 拒绝访问
查看>>
负载均衡,会话保持,session同步
查看>>
jira安装备忘
查看>>
IOS-项目中常见文件介绍
查看>>