Luogu P3946 ことりのおやつ(小鸟的点心) 【最短路】By cellur925
日本的冬天经常下雪。不幸的是,今天也是这样,每秒钟雪的厚度会增加q毫米。
秋叶原共有n个地点,编号从1到n。每个地点在开始的时候的积雪高度为hi。
有m条双向道路连接这些地点,它们的长度分别为wi米。
雪太大,公共交通系统已经停摆了,所以ことり得走路回家。她走路的速度是1m/s。
为了方便地图的绘制,秋叶原的道路规划使得每条道路严格地连接两个不同的地点,并且不会有两条道路连接的地点相同。
每个地点都有一个极限雪高li,单位是毫米,如果到达这个地点的时候,这里的雪的高度高于li则会被困在这个点走不出去,无法成功地走到ことり家。
点心店这个地点的编号是s,ことり家的编号是t。
不考虑点心店和ことり家的雪。
ことり想在g秒内回到家吃点心,越快越好。如果在g秒之内,ことり无法到家,或者她被困在路上了,那么ことり会把wtnap变成她的点心( ・ 8 ・ )
emmm其实真心是个水题。感觉自己做题做傻了,竟然跑一遍最短路之后再判断各点是否满足要求。其实在跑最短路的时候顺便判断一下就好了,如果不满足要求就不把这个点进行松弛了emmm。真·学傻了。
Code
- #include<cstdio>
- #include<algorithm>
- #include<cstring>
- #include<queue>
- #define maxn 100090
- #define maxm 500090
- using namespace std;
- typedef long long ll;
- int n,m,s,t,g,del,tot;
- int head[maxn];
- ll be[maxn],lim[maxn],dis[maxn];
- bool vis[maxn];
- struct node{
- int to,next,val;
- }edge[maxm*];
- void add(int x,int y,int z)
- {
- edge[++tot].to=y;
- edge[tot].next=head[x];
- edge[tot].val=z;
- head[x]=tot;
- }
- void dijkstra()
- {
- priority_queue<pair<int,int> >q;
- memset(dis,0x3f,sizeof(dis));
- dis[s]=;q.push(make_pair(,s));
- while(!q.empty())
- {
- int u=q.top().second;q.pop();
- if(vis[u]) continue;
- vis[u]=;
- for(int i=head[u];i;i=edge[i].next)
- {
- int v=edge[i].to;
- if(1ll*del*min(dis[u]+edge[i].val,dis[v])+be[v]>lim[v]&&v!=t) continue;
- if(dis[v]>dis[u]+edge[i].val)
- {
- dis[v]=dis[u]+edge[i].val;
- q.push(make_pair(-dis[v],v));
- }
- }
- }
- }
- int main()
- {
- scanf("%d%d%d%d%d%d",&n,&m,&s,&t,&g,&del);
- for(int i=;i<=n;i++)
- scanf("%lld%lld",&be[i],&lim[i]);
- for(int i=;i<=m;i++)
- {
- int x=,y=,z=;
- scanf("%d%d%d",&x,&y,&z);
- add(x,y,z);add(y,x,z);
- }
- dijkstra();
- if(dis[t]>g)
- {printf("wtnap wa kotori no oyatsu desu!");return ;}
- printf("%lld",dis[t]);
- return ;
- }
Luogu P3946 ことりのおやつ(小鸟的点心) 【最短路】By cellur925的更多相关文章
- 最短路【洛谷P3946】ことりのおやつ(小鸟的点心)
P3946 ことりのおやつ(小鸟的点心) 滑完雪之后,ことり突然想吃点心啦!于是她去了甜品店. 日本的冬天经常下雪.不幸的是,今天也是这样,每秒钟雪的厚度会增加q毫米. 秋叶原共有n个地点,编号从1到 ...
- 洛谷——P3946 ことりのおやつ(小鸟的点心)
P3946 ことりのおやつ(小鸟的点心) 题目太长,请去链接里看吧 注意细节:特判终点(即使困住又能怎样,到达就好了),特判高度 #include<bits/stdc++.h> #defi ...
- [洛谷P3946] ことりのおやつ(小鸟的点心)
题目大意:最短路,第$i$个点原有积雪$h_i$,极限雪高$l_i$(即雪超过极限雪高就不可以行走),每秒降雪$q$,ことり速度为$1m/s$,若时间大于$g$,则输出$wtnap wa kotori ...
- 【luogu P3946 ことりのおやつ】 题解
题目链接:https://www.luogu.org/problemnew/show/P3946 交好几遍是因为虽然能过一直有提醒..强迫症qwq #include <bits/stdc++.h ...
- Luogu P2483 【模板】k短路([SDOI2010]魔法猪学院)
说实话,看到这道题的洛谷评级我傻了(传说中的最高难度) 然后看完题目才确定这真的是一道k短路的裸题. 也就敲了个A*吧,15分钟竟然没有调试一遍过. 欧洲玄学. 看题目,主要是找几条从1走到n的路加起 ...
- Luogu P5122 [USACO18DEC]Fine Dining 最短路
先跑一遍n为起点最短路,再新开一个点,向有干草垛的点连一根边权为d[u]-w的有向边(很重要..我当时连的无向边,然后我死了.),相当于用价值抵消一部分边权, 然后以这个新的点为起点跑最短路就好了.. ...
- luogu 5468 [NOI2019]回家路线 最短路/暴力
想写一个 70 pts 算法,结果数据水,直接就切了 最短路: // luogu-judger-enable-o2 #include<bits/stdc++.h> using namesp ...
- Luogu P1073 最优贸易(最短路)
P1073 最优贸易 题意 题目描述 \(C\)国有\(n\)个大城市和\(m\)条道路,每条道路连接这\(n\)个城市中的某两个城市.任意两个城市之间最多只有一条道路直接相连.这\(m\)条道路中有 ...
- Luogu P1462 通往奥格瑞玛的道路(最短路+二分)
P1462 通往奥格瑞玛的道路 题面 题目背景 在艾泽拉斯大陆上有一位名叫歪嘴哦的神奇术士,他是部落的中坚力量 有一天他醒来后发现自己居然到了联盟的主城暴风城 在被众多联盟的士兵攻击后,他决定逃回自己 ...
随机推荐
- linux上hadoop2.4.0安装配置
1 环境准备 安装java-1.6(jdk) 安装ssh 1.1 安装jdk (1)下载安装jdk 在/usr/lib下创建java文件夹,输入命令: cd /usr/lib mkdir java 输 ...
- Vue 建立工程
npm install -g vue npm install -g vue-cli vue init webpack my-project cd my-project npm isntall npm ...
- 李洪强iOS开发之-修改状态栏的字体的颜色
李洪强iOS开发之-修改状态栏的字体的颜色 修改的效果: -(void)viewDidAppear:(BOOL)animated { [super viewDidAppear:animated]; [ ...
- RecyclerView(替代ListView)使用方法介绍
在build.gradle文件加入以下代码 compile 'com.android.support:cardview-v7:21.0.3' compile 'com.android.support: ...
- 【bzoj4554】[Tjoi2016&Heoi2016]游戏
现在问题有硬石头和软石头的限制 所以要对地图进行预处理 分行做,把有#隔开的*(x)形成联通块的存储下来. 分列作,把有#隔开的*(x)形成联通块的存储下来. 求出所有的行联通个数和列联通个数 作为二 ...
- Lambda Architecture
Lambda Architecture » λ lambda-architecture.net http://lambda-architecture.net/ Twitter's tweets ana ...
- 浅谈 React、Flux 与 Redux
React React 是一个 View 层的框架,用来渲染视图,它主要做几件事情: 组件化利用 props 形成单向的数据流根据 state 的变化来更新 view利用虚拟 DOM 来提升渲染性能 ...
- sql server filter table name
https://stackoverflow.com/questions/26577464/how-to-find-a-table-in-sql-server-if-only-the-partial-t ...
- dede摘要长度,dedecms摘要限制,dedecms摘要字数
dede摘要长度,dedecms摘要限制,dedecms摘要字数 如果可以有效控制文章摘要的字数,那么就可以使得页面布局很灵活. 在Dedecms中,在列表页调用文章摘要的方法主要有: 1:[fiel ...
- 关于js的值传递和引用传递
最近在弄一个东西,明明就很简单的.不知道为啥有个坑,双向绑定,不过当有个数组为空时,它不会发送空的数组,而是不发送.这就坑爹了.导致老是删不掉. 处理了下,改成验证为空时,发送'[]‘字符串.成功.但 ...