POJ-1062 昂贵的聘礼(最短路)

POJ 1062 昂贵的聘礼 解题报告 业余爱好。所以,算法不一定好,CODING也不一定佳,效率不一定高,只是能通过online judge而已。 立即下载

POJ-1062

N个物品,每个物品的主人有等级,每个物品都有价格,某些物品也可以由一些物品替代,且等级差距小于M的两者不能直接和间接交易,一开始可以和任意人交易问怎么样选取可以让你的花费最少来购买到物品1

人和物品都看作节点,人到每个物品的权即购买价格,物品之间的边权即优惠价格,求最短路

//人和物品都看作节点,人到每个物品的权即购买价格,物品之间的边权即优惠价格,WA1 一开始写对了,偷懒改了等级范围,忘记判大于等于l
#include <cstdio>
#include <algorithm>
#include <queue>
#include <cstring>
using namespace std;
typedef pair<int,int> PII;
const int MAXN=222;
const int MAXM=MAXN*MAXN/2;
const int INF=0x3f3f3f3f;
int head[MAXN],to[MAXM<<1],ne[MAXM<<1],wt[MAXM<<1],n,m,dist[MAXN],ecnt;
int lev[MAXN];
void init()
{
    ecnt=0;
    memset(head,0,sizeof(head));
}
void addedge(int a,int b,int c)
{
    ne[++ecnt]=head[a];
    head[a]=ecnt;
    to[ecnt]=b;
    wt[ecnt]=c;
}
int vis[MAXN];
priority_queue<PII> pq;
int dijkstra(int s,int t,int l)//s为源点,t为终点,路径权值非负
{
    for(int i=1;i<=n;i++)
        dist[i]=INF,vis[i]=0;
    dist[s]=0;
    pq.push(PII(0,s));
    while(!pq.empty())
    {
        int milb=pq.top().second;
        pq.pop();
        if(vis[milb])
            continue;
        vis[milb]=1;
        for(int j=head[milb];j;j=ne[j])
        {
            int v=to[j];
            if(((lev[v]<=m+l&&lev[v]>=l)||v==n)&&!vis[v]&&dist[v]>dist[milb]+wt[j])
            {
                dist[v]=dist[milb]+wt[j];
                pq.push(PII(-dist[v],v));
            }
        }
    }
    return dist[t];
}
vector<int> le;
int main()
{
    scanf("%d%d",&m,&n);
    int ta,tb,tc;
    n++;
    for(int i=1;i<n;i++)
    {
        scanf("%d%d%d",&ta,&tb,&tc);
        addedge(n,i,ta);
        lev[i]=tb;
        le.push_back(tb);
        for(int j=0;j<tc;j++)
        {
            scanf("%d%d",&ta,&tb);
            addedge(ta,i,tb);
        }
    }
    sort(le.begin(),le.end());
    le.erase(unique(le.begin(),le.end()),le.end());
    int ans=INF;
    for(int i=0;i<le.size();i++)
        ans=min(ans,dijkstra(n,1,le[i]));
    printf("%d\n",ans);
    return 0;
}
poj 1062 昂贵的聘礼 代码 poj 1062 昂贵的聘礼 代码 单源最短路径的Dijkstra算法 立即下载

相关推荐

基于STM32与FPGA Cyclone IV的FSMC高速数据通信实战解析

本文详细解析了基于STM32的FSMC接口与FPGA Cyclone IV实现高速并行数据通信的实战方案。通过将FPGA模拟为SRAM设备,构建了MCU与FPGA之间的高速数据通道,并深入探讨了硬件连接、STM32软件配置、FPGA逻辑设计及性能优化等关键步骤,为图像处理、高速采集等需要大数据量交换的嵌入式应用提供了稳定高效的通信解决方案。

swift5iosmith的博客 294

POJ 1062题解 Dijkstra

http://poj.org/problem?id=1062 题解: 以b[1].l-m——b[1].l为下界,进行枚举x,每次等级在x——x+m范围之内的才能走通(范围必须卡在m之间)。 求出从1到各个节点的最短路径,那么b[i]+dis[i]就是直接买i物品,通过一些列的换取,得到了1物品。 采用枚举即:假设酋长等级为5,等级限制为2,那么需要枚举等级从3~5,4~6,5~7 从

Twilightuse93的专栏 671

HBuilderx连接微信开发者工具

系列文章目录 文章目录系列文章目录前言一、环境1.HBuilerx 工具2.微信开发者工具二、关联微信开发者工具1.HBuilderx新建项目2.关联微信开发者工具3.运行微信小程序出现异常解决方法3.最终效果总结 前言 使用HBuilderx工具关联微信开发者工具,进行小程序开发 提示:以下是本篇文章正文内容,下面案例可供参考 一、环境 1.HBuilerx 工具 HBuilderx 2.微信开发者工具 微信开发者工具 二、关联微信开发者工具 1.HBuilderx新建项目 2.关联微信开发者工具

拥有必珍惜 3075

POJ_1062_最短路变形

POJ 1062 题意: 替换就相当于一条指向另一个点的有向边,权值是价值,但是每个点都有等级作为限制条件, 限制条件还必须在一个范围,例如: level[1] = 3 m=1,节点等级限制范围:[2,3]、[3,4], level[1] = 3 m=2, 范围:[1,3]、[2,4],[3,5] 3.每次最短路在将不再范围的点排除,然后取每个范围中最短的点. #i...

_llc的博客 299

Unity Shader实战:用Matcap给你的低模角色快速换上‘次世代’材质(附完整Shader代码)

本文详细介绍了Unity中Matcap技术的实战应用,通过Shader代码实现低模角色的次世代材质表现。Matcap技术利用预烘焙光照贴图,显著提升材质质感同时保持极低性能消耗,特别适合移动游戏和独立开发。文章包含完整Shader代码、平面模型着色优化方案及动态环境反射增强技巧,帮助开发者快速提升低模视觉效果。

weixin_28718755的博客 385

Markdown编辑器介绍

这篇文章介绍了Markdown编辑器的功能和使用方法。主要内容包括:Markdown的基本语法如标题、列表、链接插入等;新增功能如图片拖拽、数学公式支持、甘特图和UML图表绘制;常用快捷键说明;以及文本导出导入操作。文章详细说明了如何通过Markdown语法实现文本格式化、代码高亮、表格创建等功能,并提供了多种图表绘制的语法示例,帮助用户更好地利用Markdown编辑器进行写作和内容创作。

soso1968的博客 1178

pku1062 昂贵的聘礼(Memory Limit Exceeded。。。。。。)

 /*昂贵的聘礼Time Limit: 1000MS        Memory Limit: 10000KTotal Submissions: 8052        Accepted: 1922Description年轻的探险家来到了一个印第安部落里。在那里他和酋长的女儿相爱了,于是便向酋长去求亲。酋长要他用10000个金币作为聘礼才答应把女儿嫁给他。探险家拿不出这

zonelight的专栏 1984

TI理想二极管在冗余电源中应用实例

深入探讨理想二极管如何提升冗余电源系统的效率与可靠性,通过实际应用案例展示其在电流隔离和自动切换中的优势,帮助工程师优化电源架构设计。

weixin_30653091的博客 987

poj 1062(有限制的最短路)

题目链接:http://poj.org/problem?id=1062 思路:要求对于最短路上的点,不能出现等级之差大于m,于是我们可以枚举,假设酋长的等级为level,于是这个区间范围[level-m,level],[level-m+i,level+i],......,[level,level+m]都是可行的,对于枚举的每个区间范围,做一次SPFA即可,最终结果取最小值即可。 1 ...

weixin_34302561的博客 159

Android 集成 Google 与 Facebook 第三方登录实战详解(2024版)

本文详细介绍了2024年Android应用集成Google与Facebook第三方登录的完整实战指南。通过分步教程和代码示例,帮助开发者快速实现一键登录功能,提升用户体验和注册转化率,同时涵盖隐私合规和常见错误处理的最佳实践。

blue的专栏 822

6、探索音乐结构中的统一性:贝多芬《英雄交响曲》第一乐章的深度剖析

本文深入剖析了贝多芬《英雄交响曲》第一乐章的音乐结构,探讨其统一性的来源及表现形式。通过主题与动机、和声与调性、旋律与节奏、织体与动态等多方面的分析,揭示了这部作品在技术层面和情感表达上的卓越成就。

b9c0d的博客 518

POJ1062(有限制的最短路)

题目题意:你要娶酋长的女儿(23333)但是酋长要聘礼,你没钱,所以要去找他想要的讨好他。你拿到他想要的他就少要你的钱。(然后递推2333)题解:把酋长的女儿也看做商品,记作1,然后添加一个0点,每个物品原来的价值就是它编号到0的距离。跑一个从0到1的最短路。 但是他是有限制的,等级高的不能和等级比他低m个等级以下的做交易。所以就枚举等级上下限,下限(酋长等级-m~酋长等级),上限(酋长等级~酋长

开心铁匠铺 451

pdb文件删除杂原子 HETATM;保留或去除水分子

这样操作水分子也会跟着删除,如果需要保留水分子。

weixin_42357472的博客 2644

POJ 1062 昂贵的聘礼【经典的最短路问题】

原题链接:http://poj.org/problem?id=1062 我的链接:http://acm.hust.edu.cn/vjudge/contest/view.action?cid=19651#problem/E 昂贵的聘礼 Time Limit: 1000MS   Memory Limit: 10000K Total Submissions:

free斩 6903

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

poj1062 昂贵的聘礼 最短路

PS:中文题太爽了。。 题意:中文题我就不写题意了。。。 分析:我感觉要注意两点。。。1.注意等级限制,我本来以为只有在相邻的两个人物中有等级的限制,其实在你需要交换的所有人都有等级的限制。。。2.建图要建有向图。。不是无向图。。我因为这个哇了半天。。。 具体做法就是,建图,然后枚举dijk 代码: #include #include #include #include

671coder的专栏 8504

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

POJ 1062 昂贵的聘礼 【最短路】

题目链接:http://poj.org/problem?id=1062 假设一个起点0,根据题目给出的权值构图,答案就是从0到1之间的最短路。 这里要注意的是这个等级限制的问题。 首先等级限制不是相邻点之间的限制,而是整体路径的。 等级的限制可以通过假设一个点为最低点求最短路,我假设某个点是最短路中等级最低的,然后求最短路。每枚举一个点就求一次最短路,取最小的值。 因为你枚举的点已经是等...

Y390d的博客 190

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

【题解】昂贵的聘礼 POJ - 1062 (最短路 经典)⭐⭐⭐⭐

昂贵的聘礼 POJ - 1062 你想娶酋长的女儿,但酋长要求你给一定数额金钱的聘礼。除了金钱外,酋长也允许你用部落里其他人的某物品加上一点钱作为聘礼。而其他人的物品也可以通过指定的另外一些人的某物品加上一些金钱获得。部落里的每个人有一个等级。你的整个交易过程涉及的人的等级只能在一个限定的差值内。问你最少需要多少金钱才能娶到酋长女儿。假定每个人只有一个物品。 Input 输入第一行是两个整数M...

Suprit's blog 2299

POJ - 1062 昂贵的聘礼 [最短路]

题意: 中文题意, 但是很难懂, 我也懒得复述了直接给链接,自己去看看, 一道很有意思的最短路 传送门 题解: 设置一个源点为0 把每样物品i的原先价格dis[i] 当作mapp[0][i] 将每样物品x的的替代品y 两者产生的优惠价格 也当作一条边mapp[y][x] 然后由此用Dijkstra算法求出dis[1](1为酋长的承诺) 这里面有个限制条件 等级限制m ...

OOOak 242

POJ1062 昂贵的聘礼(Dijkstra最短路)

题目链接:http://poj.org/problem?id=1062 昂贵的聘礼 Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 34422   Accepted: 9836 Description 年轻的探险家来到了一个印第安部落里。在那里

Xuh7的专栏 1050

POJ - 1062 昂贵的聘礼 (最短路)

题目链接: POJ - 1062 昂贵的聘礼 要注意等级限制所以枚举可行的等级 #include<iostream> #include<cstring> #include<vector> #include<queue> #include<cmath> #include<math.h> u...

dianzanji4884的博客 111

POJ 1062 昂贵的聘礼 最短路

题目:http://poj.org/problem?id=1062题意:Description年轻的探险家来到了一个印第安部落里。在那里他和酋长的女儿相爱了,于是便向酋长去求亲。酋长要他用10000个金币作为聘礼才答应把女儿嫁给他。探险家拿不出这么多金币,便请求酋长降低要求。酋长说:”嗯,如果你能够替我弄到大祭司的皮袄,我可以只要8000金币。如果你能够弄来他的水晶球,那么只要5000金币就行了。”

弱智就要多努力 443

最短路(Dijkstra) POJ 1062 昂贵的聘礼

题目传送门 1 /* 2 最短路:Dijkstra算法,首先依照等级差距枚举“删除”某些点,即used,然后分别从该点出发生成最短路 3 更新每个点的最短路的最小值 4 注意:国王的等级不一定是最高的:) 5 */ 6 #include <cstdio> 7 #include <iostream>...

weixin_34346099的博客 90

[poj1062]昂贵的聘礼_最短路_离散化

昂贵的聘礼 poj-1062     题目大意:原文链接?不是英文题,自己看     注释:$1\le N \le 100$。       想法:开始的想法有些过于简单,因为落下了一个条件:就是等级限制是一条路径上的任意两点而不是相邻两点。所以我们考虑枚举当前可接受等级的区间。显然最多只有100个,然后我们用Dijkstra或者spfa求单源最短路即可。         下面我们...

dianan0938的博客 173

POJ 1062 昂贵的聘礼【最短路spfa+建图】

POJ 1062 昂贵的聘礼 题目链接:vjudge传送门 具体思路: 思路来源:https://xiaoxiaoh.blog.youkuaiyun.com/article/details/104198067 可以先抛开等级制度的限制,把问题抽象成求最短路的问题 把每个物品当成一个点(依次编号1-n),把探险家当成一个超级源点(编号为0),初始化这个超级源点到各个点的权值为得到它们所需要的金币,若物品A=物品...

指弹键盘哼民谣 507

POJ 1062 昂贵的聘礼(限制的最短路)

昂贵的聘礼 Time Limit:1000MS     Memory Limit:10000KB     64bit IO Format:%I64d & %I64u Submit Status Description 年轻的探险家来到了一个印第安部落里。在那里他和酋长的女儿相爱了,于是便向酋长去求亲。酋长要他用10000个金币作为 聘礼才答应把女儿嫁给他。探险

Inite的博客 1063

POJ 1062 昂贵的聘礼 最短路

Description 年轻的探险家来到了一个印第安部落里。在那里他和酋长的女儿相爱了,于是便向酋长去求亲。酋长要他用10000个金币作为聘礼才答应把女儿嫁给他。探险家拿不出这么多金币,便请求酋长降低要求。酋长说:"嗯,如果你能够替我弄到大祭司的皮袄,我可以只要8000金币。如果你能够弄来他的水晶球,那么只要5000金币就行了。"探险家就跑到大祭司那里,向他要求皮袄或水晶球,大祭司要他用金币来换

旧时光 997
上一篇: LightOJ-1074 Extended Traffic(SPFA)
下一篇: POJ-1502 MPI Maelstrom(最短路)
lanvent
博客等级 码龄11年 1粉丝 27原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值