UESTC 1638 红藕香残玉簟秋,轻解罗裳,独上兰舟。

Screenshot_2026-11-03-16-23-09-34.jpg 立即下载

题目链接:http://acm.uestc.edu.cn/#/problem/show/1638

题意:
给定n个点(点权未知)和m条信息:u的权值>=v的权值+w
求点权的极小解和极大解(无解则输出-1)

极小解即每个点的点权可能的最小值
极大解即每个点的点权可能的最大值

数据范围:
1<=n<=100000
1<=m<=1000000
0<=w<=100
点权为0到100之间的整数

题解:
差分约束。
求最大值,跑最短路,建一条从v到u权值为w的边。
求最小值,跑最长路,建一条从u到v权值为-w的边。



#include <bits/stdc++.h>
using namespace std;
const int maxn = 1e5+7;
const int maxm = 1e6+7;
struct edge{
    int v, w, next;
    edge(int v=0, int w=0, int next=0):v(v),w(w),next(next){}
}E1[2*maxm], E2[2*maxm];
int head1[maxn], head2[maxn], cnt1, cnt2;
int n, m, cnt[maxn], inq[maxn], mx[maxn], mi[maxn], Q[maxn];
void init(){
    memset(head1, -1, sizeof(head1));
    memset(head2, -1, sizeof(head2));
    cnt1 = cnt2 = 0;
}
void add(int u, int v, int w, int op)
{
    if(op&1){
        E1[cnt1]=edge(v,w,head1[u]), head1[u]=cnt1++;
    }
    else{
        E2[cnt2]=edge(v,w,head2[u]), head2[u]=cnt2++;
    }
}
bool spfa1(){
    int top = 0;
    memset(mi, -1, sizeof(mi));
    mi[0] = 0;
    cnt[0] = 1;
    inq[0] = 1;
    Q[top++] = 0;
    while(top){
        int u = Q[--top]; inq[u] = 0;
        for(int i = head1[u]; ~i; i = E1[i].next){
            int v = E1[i].v, w = E1[i].w;
            if(mi[v] < mi[u] + w){
                mi[v] = mi[u] + w;
                if(inq[v]) continue;
                if(cnt[v] > n) return 0;
                cnt[v]++;
                inq[v] = 1;
                Q[top++] = v;
            }
        }
    }
    return 1;
}
bool spfa2(){
    int top = 0;
    memset(mx, 0x3f, sizeof(mx));
    memset(inq, 0, sizeof(inq));
    memset(cnt, 0, sizeof(cnt));
    mx[0] = 100;
    cnt[0] = 1;
    inq[0] = 1;
    Q[top++] = 0;
    while(top){
        int u = Q[--top]; inq[u] = 0;
        for(int i = head2[u]; ~i; i=E2[i].next){
            int v = E2[i].v, w = E2[i].w;
            if(mx[v] > mx[u] + w){
                mx[v] = mx[u] + w;
                if(inq[v]) continue;
                if(cnt[v] > n) return 0;
                cnt[v]++;
                inq[v] = 1;
                Q[top++] = v;
            }
        }
    }
    for(int i=1; i<=n; i++){
        if(min(mi[i],mx[i])<0 || max(mi[i],mx[i])>100) return 0;
    }
    return 1;
}
int main()
{
    init();
    scanf("%d %d", &n,&m);
    for(int i = 1; i <= m; i++){
        int u, v, w;
        scanf("%d %d %d", &u,&v,&w);
        add(v, u, w, 1);
        add(u, v, -w, 2);
    }
    for(int i = 1; i <= n; i++){
        add(0, i, 0, 1);
        add(0, i, 0, 2);
    }
    if(spfa1()&&spfa2())
    {
        for(int i = 1; i <= n; i++){
            printf("%d %d\n", mi[i], mx[i]);
        }
    }
    else{
        puts("-1");
    }
    return 0;
}

研发流程后端开发工具,提示功能开发效率 后端开发工具 立即下载

相关推荐

机器人具有扰动抑制功能的有限时间基于方位角的领航者-跟随者编队控制(Matlab代码实现)

内容概要:本文档标题为《Plecs全桥LLC谐振变换器仿真模型.txt》,但实际内容并未涉及该主题的具体技术细节或仿真建模过程。相反,文档实质是一份由科研服务团队发布的跨学科资源目录,集中展示了大量基于Matlab、Simulink、Python、PSCAD等平台实现的科研项目与算法开发案例,涵盖电力系统、无人机路径规划、微电网优化、状态估计、信号处理、车间调度、图像处理、通信技术、雷达追踪、智能优化算法等多个工程技术领域。每个条目以“【】”标注研究主题,并注明“Matlab代码实现”“Python代码实现”等形式,表明其为可提供技术支持与代码资源的服务项目。文档末尾频繁出现“完整资源下载:公众号——荔枝科研社”及百度网盘链接,明确体现出其作为科研辅助服务推广与引流工具的功能属性。; 适合人群:面向电气工程、自动化、控制科学与工程、计算机科学、智能制造、新能源、航空航天、通信工程及相关交叉学科的研究生、高校教师、科研人员及企业研发工程师。; 使用场景及目标:①为科研人员提供课题选题、技术路线设计与算法实现的参考范例;②辅助学生或研究人员完成课程设计、毕业论文、项目仿真与算法复现任务;③作为第三方技术服务团队的能力展示目录,便于潜在客户快速了解其在多领域提供的定制化仿真与算法开发服务范围。; 阅读建议:此文档并非传统意义上的学术论文或技术教程,而是一份高度碎片化、广告性质浓厚的资源索引清单。读者应忽略其误导性的文件名,将其视为一个综合性科研技术服务目录,重点关注自身研究方向相关的条目,并通过文末提供的公众号或网盘链接进一步获取具体代码与资料。同时,需注意甄别资源的技术质量、原创性与适用性,避免盲目依赖外部服务。

cdoj1638 红藕香残玉簟秋,轻解罗裳,独上兰舟。

地址:http://acm.uestc.edu.cn/#/problem/show/1638 题目: 红藕香残玉簟秋,轻解罗裳,独上兰舟。 Time Limit: 4000/2000MS (Java/Others) Memory Limit: 65535/65535KB (Java/Others) 考试结束后,为了证明自己才是最蒻的,同学们纷纷去找老师查分阅...

weixin_30413739的博客 192

科技中介服务机构如何打造高效、可复制的技术交易服务流程?.docx

科易网基于AI模型+行业大数据,在技术转移、成果转化、技术经纪、知识产权、产业创新、科技招商等垂直领域的多样化应用场景,推出科技创新领域的AI+工具与数智化解决方案,推动科技创新与产业创新智能化发展。

CDOJ 1307 ABCDE dp, 前缀和优化

题目链接:http://acm.uestc.edu.cn/#/problem/show/1307 题意: 在数电中,有一种码,类似BCD码这种玩意儿第i位如果为1的话,那么ans+=a[i],a[i]是这一位的位权然后现在给你一个n,问你一共有多少种码可以表示1~n的所有数呢?1,1,2和2,1,1视作一样。题外话:去年有幸来到电子科技大学打了第一次ACM较为正规的比赛,现场第一次打了二等奖,但

I good vegetable a! 1260

手把手教你打造CTF动态靶场

公司想搞一个CTF比赛,需要一个竞赛靶场,于是这个任务就落在了我的身上,平台是利用CTFd框架,基于docker搭建的动态靶场,搭建过程中遇到的坑比较多,这里我会把每一个遇到的坑都指出来。我搭建的是CTFd的3.X的版本。第一次搭建的话,搭建的过程会有些痛苦,但是搭建完成后会越来越熟练,这个平台的可用性还是很高的。由于搭建的过程中遇到的坑太多了,各种各样的问题,所以决定写下这篇文章,把所有的坑都指出来,也算为后边想搭这个平台的小伙伴指一条路。Taps:资源来源:星海安全实验室如果你也对网络安全&黑客。

Python栈 4934

深度解析跨境支付之业务架构

详解跨境支付之业务架构

weixin_47493863的博客 1879

UESTC数据结构专题训练 G,H,I,J

G,http://acm.uestc.edu.cn/#/problem/show/1598 题意:给你一个n个元素的序列,支持以下操作:单点修改,查询区间内连续的最大子段和。 解法:线段树每个结点维护四个域:maxv,maxl,maxr,sumv,其中sumv为该区间的和,maxv为该区间上的最大子段和,maxl为必须包含左端点的最大子段和,maxr为必须包含右端点的最大子段和。之后我们用

I good vegetable a! 1170

二进制部署的K8s集群,如何对到期证书更新

一年前搭建的k8s集群,突然不能够正常访问,出现502错误,首先怀疑容器没起来,先对问题进行排查,排查响应的容器有没有正常启动,状态一切正常,访问容器地址也可以正常访问,于是访问node port地址,发现无法正常访问,确定问题出现在svc中。 由于其他的应用、系统也无法提供正常的服务,应该是k8s的问题,非单个应用的原因。查看服务状态,kubectl describe svc xxx,endp...

时光旅行者 3771

CDOJ 1330 柱爷与远古法阵 概率DP,高斯消元,卡精度,极度恶心

众所周知,柱爷的数学非常好,尤其擅长概率论!某日柱爷在喵蛤蛤村散步,无意间踏入了远古法阵!法阵很奇怪,是一个长度为N的走廊,初始时柱爷在最左边,现在柱爷要到最右边去!柱爷的行动方式如下:每个回合柱爷会投一次骰子,根据骰子上的点数 X,柱爷会相应的往右边移动X步.骰子的数值是 1到6,取到每面的概率相同在某些位置可能有传送门,一旦柱爷在该回合结束后在这个位置上,会被强制传送到传送门的另外一边传送门是

I good vegetable a! 1076

基于Transformers库的BERT模型:一个文本情感分类的实例解析

简介 本文来讲述BERT应用的一个例子,采用预训练好的BERT模型来进行演示。BERT的库来源于Transformers,这是一个由PyTorch编写的库,其集成了多个NLP领域SOTA的模型,比如bert、gpt-2、transformer xl等,并且可以自由选择已经预训练好的模型参数,我们可以基于这些参数进行进一步的训练调试。 Part 1: 利用BERT基于特征的方式进行建模 1、任务与数...

蓝天白云梦的csdn博客 2万+

用Raspberry Pi Imager重装树莓派系统

这次在官网无意中看到他们出了一个Raspberry Pi Imager的工具,可以直接完成镜像烧录操作,于是就尝了个鲜。选择“编辑设置”按钮,会弹出具体的设置信息,有三个tab,第一个是General信息,包括用户名、密码、wifi和语言设置;后续的操作就和我当初第一次装树莓派系统的操作差不多,在此就不再赘述,有兴趣的朋友可以看我以前的博文。完成定制化设置后,点击“保存”按钮,软件回到前面的提示框,连续点击两个“是”,开始写入SD。第二个下拉框选择你要安装的OS,点击黄框所在的选项,可以挑选更多OS。

天飓的技术博客 1085

UESTC 1639 云中谁寄锦书来?雁字回时,月满西楼

题目链接:http://acm.uestc.edu.cn/#/problem/show/1639题意: 在n个点m条边的无向图上,有k个出口 从起点出发,每到一个点(包括起点),该点连出的边中有d条会被封锁 求最坏情况下到达出口的最短路 数据范围: 1<=n<=100000 1<=m<=1000000题解:Dijkstra拓展 由于求最坏情况下的最短路,对于每个点,显然最优的前d条边不

I good vegetable a! 1062

携程登录风控逆向踩坑实录:从滑块到点选验证码,我是如何一步步拿到phantom-token的

本文详细解析了携程登录风控系统的逆向过程,从滑块验证码到点选验证码的破解,再到设备指纹生成和加密协议逆向,最终成功获取phantom-token。文章提供了关键代码示例和实战技巧,帮助开发者理解并绕过复杂的风控机制。

weixin_28049429的博客 972

CDOJ 1292 卿学姐种花(暴力,分块,线段树)

众所周知,在喵哈哈村,有一个温柔善良的卿学姐。 卿学姐喜欢和她一样美丽的花。所以卿学姐家的后院有很多的花坛。 卿学姐有n 个花坛,一开始第i个花坛里有A[i] 朵花。每过一段时间,卿学姐都会在花坛里种上新的花。 作为一个聪明的学姐,卿学姐的种花方式也是与众不同 , 每一次,卿学姐会在第x 个花坛种上y朵花,然后在第x+1个花坛上种上y−1朵花,再在第x+2个花坛上种上y−2 朵花..

I good vegetable a! 980

《寻秦OL》.ani动画逆向解析:二进制结构与Unity重实现

动画文件格式是游戏资源逆向的核心入口,其本质是一组按特定规则组织的二进制数据流。理解魔数识别、字节序、字段对齐与差分编码等底层原理,是解析非标准格式的关键前提。技术价值在于绕过黑盒协议,直接从静态客户端提取可验证的原始语义;典型应用场景包括老游戏复刻、美术资产抢救、引擎跨平台迁移及教学级逆向训练。本文以《寻秦OL》的`.ani`文件为实例,深入剖析其C风格结构布局、GB2312中文命名、16位定点数旋转表示及帧主序差分存储机制,并基于C#在Unity中完成从字节流到AnimationClip的端到端重建,覆

weixin_30368981的博客 640

Halcon那些事:Halcon缺陷检测检测印刷数字完整性

创建模板 create_shape_model模板匹配 find_shape_model。

十多年IT经验,专注机器视觉,智能制造半导体行业 764

UESTC 1610 黑红梅方

题目链接:http://acm.uestc.edu.cn/#/problem/show/1610 解法: 卿式扑克序列? 出现一组有连续4张牌均不同的序列 不好计算,怎么办? 可以计算出没有一组连续4张牌均不同的情况,用总情况减去没有一组连续4张牌均不同的情况 我们来看 三张牌排成一排有哪些情况? 三张牌均相同 AAA

I good vegetable a! 939

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

UESTC 数据结构专题训练 A,B,C

A:题目链接 http://acm.uestc.edu.cn/#/problem/show/1591解法:RMQ或者线段树 【num of wa】 0#include <bits/stdc++.h> using namespace std; int n, q, mx[50010][20],mi[50010][20],a[50010]; void RMQ(){ for(int i=1; i<

I good vegetable a! 933

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

UESTC 1647 酌贪泉而觉爽, 处涸辙以犹欢。

题目链接:http://acm.uestc.edu.cn/#/problem/show/1647题意:给你一个全为0的01串,问你能否通过一系列的变换,得到全为1的01串。解法:将每个01串看作一个点,每一个变换可以看作是一条有向边,现在问题可以转化 为找从“00..0”这个点到“11..1”这个点的最短路,那么可以使用Dijkstra来解决这个问题。 对于每个CFT,建一条有向边,从si指向t

I good vegetable a! 886

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

UESTC 1652 都市大飙车

题目链接:http://acm.uestc.edu.cn/#/problem/show/1652 解法:多段图问题,用滚动数组,转移很好想。 概率DP 算法复杂度:O(N*M*log N) 用kk[i]记录第i个障碍物的位置 pos=(b-1)*m+a; kk[i]=pos; dp1[j]记录当前所有车道安全的概率 dp2[j]记录下一步所有车道安全的概率 初始化:memset(d

I good vegetable a! 809

UESTC 1065 全都是秋实大哥 kmp

题目链接:http://acm.uestc.edu.cn/#/problem/show/1065题意: 中文题目解法:理解KMP里面的next之后,就是水题了。//UESTC 1065#include <bits/stdc++.h> using namespace std;const int maxn = 3e6+10; char s[maxn]; int fail[maxn];int main()

I good vegetable a! 764

UESTC 1006 最长上升子序列

题目链接:http://acm.uestc.edu.cn/#/problem/show/1006 算法复杂度:O(N^2) dp[i]表示以第i个元素开头的最长上升子序列长度 for(i=1;i<=n;i++) dp[i]=1; for(i=n;i>=1;i–) { for(j=n;j>i;j–) if (a[j]

I good vegetable a! 758

UESTC 1607 大学生足球联赛

题目链接:http://acm.uestc.edu.cn/#/problem/show/1607 解法: 构造法:蛇形安排赛程表 算法复杂度:O(N^2) 将1-N排成两竖列,每一轮同一行的为对手 保持1的位置不变,其他位置按顺(逆)时方向依次旋转 1 6 1 2 1 3 1 4 1 5

I good vegetable a! 756

UESTC 数据结构专题训练 D,E,F

D,http://acm.uestc.edu.cn/#/problem/show/1584 题意:平面上n个点,询问每个点左下方的点有多少个? 解法:排序(以Y坐标为第一关键字,X坐标为第二关键字)+树状数组 #include using namespace std; const int maxn=100010; int n,rnk[maxn],c[maxn]; str

I good vegetable a! 743

CDOJ 1294 天行廖的游戏 dp 容斥

题目链接:http://acm.uestc.edu.cn/#/problem/show/1294 天行健,君子以自强不息。地势坤,廖爷以厚德载物一日在喵哈哈村,天行廖和沈宝宝正在玩一个游戏。天行廖分别在N个纸片上写上一个数字,并放到一个盒子中。现在沈宝宝要从盒子中抓出任意张纸片。如果沈宝宝抓出的纸片上的数字Ai1 ,Ai2,….Aik满足Ai1 & Ai2 & ….Aik=0 ( i1//CDO

I good vegetable a! 731
上一篇: UESTC 图论专题 A-D
下一篇: UESTC 1639 云中谁寄锦书来?雁字回时,月满西楼
just_sort
博客等级 码龄11年 2357粉丝 1667原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值