POJ 3169 Layout(差分约束)

智能座舱架构与芯片 - (3) 硬件篇 上 在了解智能座舱的基本架构之后,我们有必要针对智能座舱域的硬件平台,软件平台,SOC等进行逐一介绍。从它们的整体结构中去认识最新的智能座舱组成部件,以及主要功能等。如上图,是中央计算-区域控制架构下的智能座舱硬件平台框架图,其中,智能座舱控制器CDC挂载在以太网交换机上,与其他车控域VDC,自驾域ADC,网联设备5G+V2X等通过以太网实现数据交互。而智能座舱域的外部硬件设备还包含有连接子系统音频子系统摄像头子系统显示子系统存储子系统功能安全子系统等。 阅读详情

Layout

题目链接:

http://poj.org/problem?id=3169

解题思路:

题目大意:

当排队等候喂食时,奶牛喜欢和它们的朋友站得靠近些。FJ有N(2<=N<=1000)头奶牛,编号从1到N,沿一条直线站着等候喂

食。奶牛排在队伍中的顺序和它们的编号是相同的。因为奶牛相当苗条,所以可能有两头或者更多奶牛站在同一位置上。即使说,

如果我们想象奶牛是站在一条数轴上的话,允许有两头或更多奶牛拥有相同的横坐标。

一些奶牛相互间存有好感,它们希望两者之间的距离不超过一个给定的数L。另一方面,一些奶牛相互间非常反感,它们希望两者间

的距离不小于一个给定的数D。给出ML条关于两头奶牛间有好感的描述,再给出MD条关于两头奶牛间存有反感的描述。

(1<=ML,MD<=10000,1<=L,D<=1000000)

你的工作是:如果不存在满足要求的方案,输出-1;如果1号奶牛和N号奶牛间的距离可以任意大,输出-2;否则,计算出在满足所

有要求的情况下,1号奶牛和N号奶牛间可能的最大距离。

算法思想:

我们先研究,如果不要求输出1和N的最大距离,而只需一个可行的距离,应该如何操作。

我们用D[i]表示I号奶牛和1号奶牛间的距离。

因为在队伍中的顺序必须和编号相同,所以对于任意I号奶牛,1<=I<N,在距离上应该满足:

D[I+1] - D[I] >= 0

对于每个好感的描述(i,j,k),假设i<=j,体现到距离上的要求就是:

D[j] - D[I] <= k

对于每个反感的描述(i,j,k),假设i<=j,体现到距离上的要求就是:

D[j] - D[I] >= k

这时的模型有一个名称,叫作:差分约束系统。

为了方便起见,我们将每种不等式写成我们约定的形式:

D[I] <= D[I+1]
D[j] <= D[I] + k
D[I] <= D[j] - k

看到这些不等式,你想到了什么?

没错,在求顶点间地最短路问题中,我们有这样的不等式:

若顶点u到顶点v有边e=uv,且边权为w(e),设d(u),d(v)为源点到顶点u和顶点v的最短路长,

则 d(v) <= d(u) + w(e)

这个不等式和前面的条件形式十分相似,这就启发我们用构图用最短路做。

具体步骤是:

作有向图G=(V,E),V={ v1,v2,v3,…,vn},E={e1,e2,e3,…},对于相邻两点i和(i+1),对应的顶点vi+1向vi引一条边,费用

为0;对于每组好感描述(ai,bi,di),我们假设有ai<bi,否则ai和bi交换,则顶点vai向vbi引一条边,费用为di;对于每组反感描述

(ai,bi,di),我们假设有ai<bi,否则ai和bi交换,则顶点vbi向vai引一条边,费用为-di。

于是问题变为在G中求v1到其它所有顶点的最短路。我们证明若G中无负权回路,则问题有解,即存在满足条件的数列,若G中有负

权回路,则问题无解,即不存在满足条件的数列。

AC代码:

#include <iostream>
#include <cstdio>
#include <queue>
#include <cstring>
#include <algorithm>
#define INF 0xfffffff
using namespace std;

const int V=1010;
const int E=20010;
int n,ml,md;
int pnt[E],cost[E],nxt[E];
int e,head[V],dis[V];
int vis[V];
int cnt[V];

int relax(int u,int v,int c){
    if(dis[v] > dis[u]+c){
        dis[v] = dis[u]+c;
        return 1;
    }
    return 0;
}

inline void addedge(int u,int v,int c){
    pnt[e] = v;
    cost[e] = c;
    nxt[e] = head[u];
    head[u] = e++;
}

int SPFA(int src,int n){
    memset(cnt,0,sizeof(cnt));
    memset(vis,0,sizeof(vis));
    for(int i = 1; i <= n; ++i)
        dis[i] = INF;
    dis[src] = 0;
    queue<int> q;
    q.push(src);
    vis[src] = 1;
    ++cnt[src];
    while(!q.empty()){
        int u,v;
        u = q.front();
        q.pop();
        vis[u] = 0;
        for(int i = head[u]; i != -1; i = nxt[i]){
            v = pnt[i];
            if(relax(u,v,cost[i]) && !vis[v]){
                q.push(v);
                vis[v] = 1;
                if(++cnt[v] > n)
                    return -1;
            }
        }
    }
    if(dis[n] == INF)
        return -2;
    return dis[n];
}

int main(){
    while(~scanf("%d%d%d",&n,&ml,&md)){
        int a,b,c;
        e = 0;
        memset(head,-1,sizeof(head));
        for(int i = 0; i < ml; ++i){
            scanf("%d%d%d",&a,&b,&c);
            if(a > b)
                swap(a,b);
            addedge(a,b,c);
        }
        for(int i = 0; i < md; ++i){
            scanf("%d%d%d",&a,&b,&c);
            if(a < b)
                swap(a,b);
            addedge(a,b,-c);
        }
        printf("%d\n",SPFA(1,n));
    }
    return 0;
}


假人有限元模型 假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用 立即下载

相关推荐

台积电技术研发实力

台积电技术研发实力 台积电在半导体行业的地位毋庸置疑。他们究竟有多强大,大部分读者了解得可能非常片面。从最新公布的2019年财报里,看看台积电的真正实力。 一、台积电在市场上的地位 根据公司财报,台积公司在先进制程技术、特殊制程技术,以及先进封装技术的发展上持续领先全球集成电路制造服务领域,2019年的市场占有率为52%。台积公司总体营收以地区划分(主要依据客户营运总部所在地),来自北美市场的营收占台积公司总体营收的60%、日本与中国大陆以外的亚太市场占9%、中国大陆市场占20%、欧洲、中东及非洲市场占6

吴建明wujianming_110117 1900

POJ 3169 Layout【差分约束+spfa判负环】

POJ 3169 Layout 题目大意: 在一个一维坐标轴上排列各个点,使得每两个点直接满足给定的两种条件 某两点间的距离不大于某个值,以及某两点距离不小于某个值 具体思路: 差分约束,最短路求解 不懂差分约束的,可以参考这篇博客https://blog.youkuaiyun.com/whereisherofrom/article/details/78922648 差分约束的条件: 假设标号A<B ...

指弹键盘哼民谣 489

PD虚拟机安装CentOS7后必做的Parallels Tools配置指南(附常见错误解决)

本文详细指导在Mac的Parallels Desktop虚拟机中安装CentOS 7后如何高效配置Parallels Tools,包括环境准备、镜像挂载、依赖问题解决及性能优化。特别针对常见错误如挂载失败、依赖缺失等提供实用解决方案,帮助用户实现主机与虚拟机间的无缝交互和显示优化。

weixin_29288313的博客 299

POJ - 3169 Layout (差分约束)(SPFA)

POJ - 3169 Layout (差分约束)(SPFA)(kuangbin) Problem Like everyone else, cows like to stand close to their friends when queuing for feed. FJ has N (2 <= N <= 1,000) cows numbered 1..N standing...

四季不败的博客 271

ST7789驱动实战:从SPI时序到RGB565显示的完整配置解析

本文详细解析了ST7789液晶驱动芯片的SPI时序配置与RGB565显示实现,从数据手册解读到代码实战,涵盖SPI接口配置、关键寄存器设置及完整初始化流程。通过优化DMA传输和常见问题排查,帮助开发者高效驱动ST7789显示屏,适用于嵌入式显示项目开发。

weixin_29162439的博客 183

中兴SDH设备开局及业务配置

中兴SDH设备开局及业务配置 1.设备开局(S200-----S325) A.开电之后,按住截铃(bell off)开关,直至NCP告警灯变成橙色; B.此时,设备进入Download状态,设备IP为:192.192.192.11/24; 2.用交叉线(568A)将设备的QX口连接至电脑,电脑配置和设备相同网段的IP信息; 3.在电脑上测试连通性:pin...

weixin_33897722的博客 3996

[POJ 3169]Layout[差分约束][最短路]

题目链接:[POJ 3169]Layout[差分约束][最短路] 题意分析: 牛儿们互相间有喜欢双方的,也有讨厌双方的。互相喜欢的,希望离得尽量近,互相讨厌的,希望离得尽量远,问:能否根据要求把牛儿们排成一行?如果能,请输出1到N的最大距离(如果为无穷输出『-2』),否则,输出『-1』。 解题思路: a喜欢b,那么dis(a,b)<=cdis(a, b) <= c,a讨厌b,那么dis(a,

闲停 604

SAP-ABAP:SAP库存管理核心增强:IF_EX_MB_DOCUMENT_BADI 深度解析

SAP库存管理核心增强:IF_EX_MB_DOCUMENT_BADI 深度解析

baidu_35680696的博客 1446

POJ——3169Layout(差分约束)

POJ——3169Layout Layout Time Limit:1000MS Memory Limit:65536K Total Submissions:14702 Accepted:7071 Description Like everyone else, cows like to stand close to thei...

weixin_30721077的博客 182

【文献笔记】CVPR 2023|Attention-Based Point Cloud Edge Sampling

优点能够有效采出点云数据的边缘点分类任务性能优越不足没有设计出一个更好的上采样方法,导致分割任务的性能略低只考虑了边缘特征,没有利用其他几何特征。

m0_55908255的博客 318

NVIDIA Isaac GR00T N1 人形机器人强化学习入门教程(二)详细步骤

LeRobot 格式 1.1 加载数据集 要加载数据集,我们需要定义以下 3 项内容: 在数据中显示图像帧 我们还可以对 LeRobotSingleDataset 类中的数据进行一系列转换。下面展示了如何对数据进行转换。 现在看看应用转换后的数据有何不同。 例如,对状态和操作进行规范化和串联,对视频图像进行裁剪、调整大小和颜色抖动。 二、GR00T 推断 本教程介绍如何使用 GR00

2506_90492529的博客 3012

POJ3169 - Layout (差分约束)

题目链接:https://cn.vjudge.net/problem/POJ-3169题目大意:解题过程:刚开始是一脸懵逼的,怎么还有这种题,完全没想法。 然后看书上说是差分约束,然后和最短路类比了下,还是没看懂,最后是去网上搜了下博客,然后又自己画了画才弄懂。http://www.cppblog.com/menjitianya/archive/2015/11/19/212292.html题目分

ACM_Fish的博客 496

基于STM32L4XX、HAL库的AD7768BSTZ 模数转换器ADC驱动程序设计

/ 默认SPI配置。// 读取通道数据命令。// 通过SYNC_IN引脚触发转换(如果使用)// 处理数据...// 或者通过SPI命令。// 初始化AD7768。// SPI1引脚配置。

zhusl6688的博客 460

POJ 3169 Layout(差分约束系统)

POJ 3169 Layout(差分约束系统) http://poj.org/problem?id=3169 题意: 当排队等候喂食时,奶牛喜欢和它们的朋友站得靠近些。FJ有N(2 一些奶牛相互间存有好感,它们希望两者之间的距离不超过一个给定的数L。另一方面,一些奶牛相互间非常反感,它们希望两者间的距离不小于一个给定的数D。给出ML条关于两头奶牛间有好感的描述,再给出MD条关于两头奶牛间存

code 873

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

POJ 3169 Layout (差分约束系统)

题目地址:POJ 3169 很简单的差分约束。。公式很明显。当输入最大值的时候,是a-b=c。然后根据这个式子用最短路求。 代码如下: #include #include #include #include #include #include #include #include #include #include #include using namespace st

scf0920 1204

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

Layout POJ3169 差分约束

传送门:POJ3169 题意:有N头牛按编号顺序排在一条直线上(一个位置可以有多头牛),两两喜欢的牛之间距离不能超过d,两两讨厌的牛之间距离不能小于d,求1号牛和n号牛之间的最大距离。 纪念我的差分约束第一题。 因为此题第一次了解差分约束,个人强烈非常特别必须推荐我学习差分约束的博客:写的真是太好了! 感觉就算你没有最短路的基础这篇文章也能给你介绍明白差分约束是啥。 回到题上来,学会差分

WA是一笔财富 350

POJ 3169 Layout 差分约束

一、内容 Like everyone else, cows like to stand close to their friends when queuing for feed. FJ has N (2 <= N <= 1,000) cows numbered 1..N standing along a straight line waiting for feed. The cows ...

Tizzi的博客 893

【poj3169】Layout 差分约束

DescriptionLike everyone else, cows like to stand close to their friends when queuing for feed. FJ has N (2 <= N <= 1,000) cows numbered 1..N standing along a straight line waiting for feed. The cows a

DQS的树洞 1256

[POJ 3169] Layout 差分约束

http://poj.org/problem?id=3169题意:有 n 头牛 它们按照 1 - n 的顺序排成一列, 有些牛的距离必须大于等于某个值, 有些牛的距离必须小于等于某个值,相邻的两头牛距离必须大于等于 0 。思路:不等式关系 可以用差分约束求解。这题要求的是1 和 n 的最大距离,那么将所有的不等式化成小于等于的的形式,然后用 spfa 求最短路径。

AcmHonor的专栏 549

poj 3169 Layout(差分约束+spfa)

题目链接:http://poj.org/problem?id=3169 题意:n头牛编号为1到n,按照编号的顺序排成一列,每两头牛的之间的距离 >= 0。这些牛的距离存在着一些约束关系:1.有ml组(u, v, w)的约束关系,表示牛[u]和牛[v]之间的距离必须 <= w。2.有md组(u, v, w)的约束关系,表示牛[u]和牛[v]之间的距离必须 >= w。问如...

awow80285的博客 172

差分约束 POJ 3169 Layout

题意: 将给定的n头牛按编号大小依次安排在数轴上 给出ml条边,每条边A、B、D表示牛A和牛B的距离不能超过D 再给出md条边,每条边A、B、D表示牛A和牛B的距离不能低于D 求符合要求的最大的牛1到牛n的距离。 题解: 一堆不等式,首先想到差分约束。 差分约束: 要求最大值,则将不等式组转换为小于等于形式,spfa求最短路(因为可能有负环),dis初始化为INF,对于每个形如...

qq_38515845的博客 301

POJ 3169 Layout [差分约束]

题意:n头牛编号为1到n,按照编号的顺序排成一列,每两头牛的之间的距离 >= 0。这些牛的距离存在着一些约束关系:1.有ml组(u, v, w)的约束关系,表示牛[u]和牛[v]之间的距离必须 = w。问如果这n头无法排成队伍,则输出-1,如果牛[1]和牛[n]的距离可以无限远,

Cathy 417

【差分约束】poj 3169 Layout

Layout Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 19649 Accepted: 9435 Description Like everyone else, cows like to stand close to their friends when queuing for feed. FJ has N (2 <= N <= 1,000) cows numbered 1....

andyc_03的博客 133

poj 3169 Layout 【差分约束】

Layout Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 8249   Accepted: 3949 Description Like everyone else, cows like to stand close to their friends when

世界很大 507

差分约束 - Layout - POJ 3169

差分约束 - Layout - POJ 3169 题意: 当排队等候喂食时,奶牛喜欢和它们的朋友站得靠近些。 农夫约翰有 N 头奶牛,编号从 1 到 N,沿一条直线站着等候喂食。 奶牛排在队伍中的顺序和它们的编号是相同的。 因为奶牛相当苗条,所以可能有两头或者更多奶牛站在同一位置上。 如果我们想象奶牛是站在一条数轴上的话,允许有两头或更多奶牛拥有相同的横坐标。 一些奶牛相互间存有好感,它们希望两者之间的距离不超过一个给定的数 L。 另一方面,一些奶牛相互间非常反感,它们希望两者间的距离不小于一个给定的数 D

njuptACMcxk的博客 703

最短路练习14/poj/3169 Layout 差分约束spfa解法

题意: 有n头牛,按照序号1……n排队,多头牛可以站在同一个位置(暂且这么认为),也就是任意两头牛之间的距离都大于等于0。先给出ml组约束关系(u,v,w)代表第u牛和第v牛之间的距离要小于等于w。再给出md组关系(u,v,w),代表第u牛和第v牛之间的距离要大于等于w。求这n头牛排成的队伍能否符合以上的约束,不能的话(也就是出现负环),输出“-1”,如果距离是inf,输出“-2”。否则输出这个最短距离。 思路:转化为差分约束模型。dis[i]表示第i头牛所在的位置。要注意除了题目所给出的ml+md条约

Accepted 503

POJ 3169-Layout(差分约束系统)

题目地址:POJ 3169 题意:N头牛排队吃饭 排编号顺序排,大的永远在小的前面,但牛之间有的关系好,有的差,所以有的牛想离某些牛的距离最远不超过D 有的必须大于D 给出它们的关系 求第n头牛跟第一头的最远距离。 思路:很简单的查分约束,公式很好看出来。求最大值 约束条件转化为 =D2 把这个条件转化一下--> S小-S大 #include #include #include #in

Rocky0429 1843
上一篇: POJ 3723 Conscription(最小生成树)
下一篇: UVA 10006 Carmichael Numbers(快速幂)
yphacker
博客等级 码龄12年 199粉丝 540原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值