bzoj2662: [BeiJing wc2012]冻结 最短路 建图
好久没有1A题啦♪(^∇^*)
一个sb建图,我居然调样例调了10min
看起来是双向边,其实在建图的时候要当成有向图,
否则他会时间倒流(233)
把每个点裂成k个点,然后把每条边裂成4条边(正向反向&膜不膜)
(话说我好像不会用openlivewriter贴代码,尴尬了)
#include <bits/stdc++.h>
#define poi(x,y) ((x)*(k+1)+(y))
#define st poi(1,0)
#define INF 2000000000
using namespace std;
int n,m,k,E;
int from[],to[],nex[];
int fir[],d[],w[];
void add(int x,int y,int z)
{
from[++E]=x;to[E]=y;w[E]=z;nex[E]=fir[x];fir[x]=E;
}
int work()
{
for(int i=;i<=poi(n,k);i++)
d[i]=INF;
d[st]=;
priority_queue<pair<int,int> > q;
for(int i=fir[st];i;i=nex[i])
q.push(make_pair(-w[i],i));
while(!q.empty())
{
int tem=q.top().second;q.pop();
if(to[tem]>=poi(n,))
int e=;
if(d[from[tem]]!=INF && d[from[tem]]+w[tem]<d[to[tem]])
{
d[to[tem]]=d[from[tem]]+w[tem];
for(int i=fir[to[tem]];i;i=nex[i])
q.push(make_pair(-w[i],i));
}
}
return d[poi(n,k)];
}
int main()
{
scanf("%d%d%d",&n,&m,&k);
for(int i=;i<=m;i++)
{
int from,to,wei;
scanf("%d%d%d",&from,&to,&wei);
for(int j=;j<k;j++)
add(poi(from,j),poi(to,j+),wei/),
add(poi(to,j),poi(from,j+),wei/);
for(int j=;j<=k;j++)
add(poi(from,j),poi(to,j),wei),
add(poi(to,j),poi(from,j),wei);
}
for(int i=;i<k;i++)
add(poi(n,i),poi(n,k),);
printf("%d\n",work());
return ;
}
bzoj2662: [BeiJing wc2012]冻结 最短路 建图的更多相关文章
- Bzoj 2662: [BeiJing wc2012]冻结 dijkstra,堆,分层图,最短路
2662: [BeiJing wc2012]冻结 Time Limit: 3 Sec Memory Limit: 128 MBSubmit: 647 Solved: 348[Submit][Sta ...
- BZOJ 2662: [BeiJing wc2012]冻结(最短路)
这道题和 BZOJ 2763飞行路线 几乎一模一样..然后飞行路线我是1A,这道题WA了4次,我开始怀疑我的智商了.. ---------------------------------------- ...
- [bzoj2662 BeiJing wc2012] 冻结 (分层图+最短路)
传送门 Description "我要成为魔法少女!" "那么,以灵魂为代价,你希望得到什么?" "我要将有关魔法和奇迹的一切,封印于卡片之中„„&q ...
- BZOJ2662[BeiJing wc2012]冻结——分层图最短路
题目描述 “我要成为魔法少女!” “那么,以灵魂为代价,你希望得到什么?” “我要将有关魔法和奇迹的一切,封印于卡片之中„„” 在这个愿望被实现以后的世界里,人们享受着魔法卡片(Spe ...
- 【最短路】【Heap-Dijkstra】【分层图】bzoj2662 [BeiJing wc2012]冻结
裸的分层图最短路. #include<cstdio> #include<cstring> #include<queue> #include<algorithm ...
- BZOJ2662: [BeiJing wc2012]冻结 spfa+分层图
Description “我要成为魔法少女!” “那么,以灵魂为代价,你希望得到什么?” “我要将有关魔法和奇迹的一切,封印于卡片之中„„” 在这个愿望被实现以后的世界里,人们享 ...
- bzoj2662 [BeiJing wc2012]冻结 ——分层图
题目:https://www.lydsy.com/JudgeOnline/problem.php?id=2662 分层图: 我也不知道我写的是不是 bfs (dijkstra?). 代码如下: #in ...
- BZOJ2662[BeiJing wc2012]冻结【SPFA】
“我要成为魔法少女!” “那么,以灵魂为代价,你希望得到什么?” “我要将有关魔法和奇迹的一切,封印于卡片之中„„” 在这个愿望被实现以后的世界里,人们享受着魔法卡片(SpellCard ...
- BZOJ2662 [BeiJing wc2012]冻结
网上的题解都是分层图+spfa或者dijkstra 我觉得dijk太难写了,懒得写,看了一下数据范围$N=50$,这显然是出题人勾引人犯罪 我决定使用floyd的做法,令$f[i][j][t](k)$ ...
随机推荐
- array_1.array_map
note: 为数组的每个元素应用回调函数 <?php $arr = [1, 2, 3]; $arr1 = array_map( function ($value) { return $value ...
- 文章预告的自我挖坑系列——D3.js 系列之星光闪烁
D3.js 是个神奇的工具,下面收集了一些与星星相关的可视化的例子,静待慢慢的把坑填上 雷达图http://bl.ocks.org/kevinschaul/8213691 星空 二维(一)h ...
- web前端js过滤敏感词
web前端js过滤敏感词 这里是用文本输入框还有文本域绑定了失去焦点事件,然后再遍历敏感词数组进行匹配和替换. var keywords=["阿扁","呵呵", ...
- WCF的用户名+密码认证方式(转)
概述 今天在做Master Data Service(后面简称MDS)项目时需要通过WCF来使用MDS的API,从而对MDS的数据进行操作.在这个过程中,遇到了一个棘手的问题,就是在客户端调用Web ...
- Godot-3D教程-02.3D性能和局限性
介绍 Introduction Godot遵循表现与性能平衡信条.在这个表现的世界中,它们总是有许多约定俗成的东西,主要是在用执行速度换取可用性与扩展性方面.下面是一些实际的例子: 高效地渲染对象是比 ...
- 洛谷P3372线段树模板1——线段树
题目:https://www.luogu.org/problemnew/show/P3372 线段树模板. 代码如下: #include<iostream> #include<cst ...
- C++ 创建文件的方法
CString getPath(){ CTime time = CTime::GetCurrentTime(); CString t = time.Format(_T("%Y%m%d%H%M ...
- 47: error: undefined reference to `QWebView::QWebView(QWidget*)'
QT 5.6版本 用Qt界面设计器打开界面文件,在界面上托入QWebView控件,这时运行会出现错误,错误如下: ......... undefined reference to `QWebView ...
- Deepin安装wxpython教程
环境: 安装报错: 解决: 1.sudo apt-get install libgtk-3-dev -y 2.sudo apt-get install freeglut3-dev libgstrea ...
- Photoshop CC 智能切图功能介绍
http://gdc.qq.com/ http://gdc.qq.com/?p=4445