[ABC340D] Super Takahashi Bros.

Link

考虑把这题转换为图论模型。

按照题意,就是 iii+1i+1 有一条长度为 aia_i 的边,iiXiX_i 有一条长度为 bib_i 的边。

然后跑最短路即可。

#include<bits/stdc++.h>
using namespace std;
const int N=1e6+10;
#define int long long 
int n,dis[N];
priority_queue<pair<int,int>,vector<pair<int,int> >,greater<pair<int,int> > >q;
struct node{
	int v,w;
};
vector<node> g[N<<1];
void Dijkstra(int s){
	memset(dis,0x7f,sizeof(dis));
	q.push({0,s}),dis[s]=0;
	while(!q.empty()){
		int u=q.top().second;
		q.pop();
		for(int i=0;i<g[u].size();i++){
			int v=g[u][i].v,w=g[u][i].w;
			if(dis[v]>dis[u]+w){
				dis[v]=dis[u]+w;
				q.push({dis[v],v});
			}
		}
	}
	cout<<dis[n]<<endl;
}
signed main(){
	cin>>n;
	for(int i=1,x,y,z;i<n;i++){
		cin>>x>>y>>z;
		g[i].push_back({z,y}),g[i].push_back({i+1,x});
	}
	Dijkstra(1);
}
posted @   June_Failure  阅读(12)  评论(0编辑  收藏  举报  
相关博文:
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 使用C#创建一个MCP客户端
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示