hdu 4857 逃生 拓扑排序+优先队列,逆向处理

基于深度学习的故障检测算法实战:从数据切窗到模型部署全流程 时序异常检测是工业智能化的核心技术,其原理是通过深度学习模型自动学习正常数据分布,偏离即报警。技术价值在于替代人工阈值,提升故障早期识别率与泛化能力。典型应用于旋转机械、电力变压器等场景。基于深度学习的故障检测算法结合CNN与自编码器,覆盖数据切窗、标签构造、模型选型及阈值设定,实现从振动信号到报警的端到端落地。 阅读详情

hdu4857 逃生

题目是求拓扑排序,但不是按照字典序最小输出,而是要使较小的数排在最前面。

一开始的错误思路:给每个点确定一个优先级(该点所能到达的最小的点),然后用拓扑排序+优先对列正向处理,正向输出。这是错误的,如下样例:

1

5 4

5 2

4 3

2 1

3 1


正确的解法:是反向建边,点大的优先级高,用拓扑排序+优先队列,逆向输出序列即可。

根据每对限制,可确定拓扑序列,但此时的拓扑序列可能有多个(没有之间关系的点的顺序不定)。本题要求较小的点排到前面,则可确定序列。

(1)如果点a和点b有直接和简接的拓扑关系,那么a和b的先后顺序可有拓扑排序确定。

(2)如果点a和点b没有直接和简接的拓扑关系,那么a和b的先后顺序由a和b所能到达的点的确定。

如:

1

3 2

3 1

3 1

应输出结果为 3 1 2

点3 和 点2 没有直接的拓扑关系,但是3到达最小点为1,2到达最小点为2。

综合(1)和(2)本题需要逆向处理。

PS:欧拉回路的路径输出也是逆向输出的。

#include <bits\stdc++.h>
using namespace std;

typedef long long LL;
const int INF = 1000000007;
const double eps = 1e-10;
const int maxn = 30010;

int d[maxn];
vector<int>v[maxn];
priority_queue<int, vector<int>, less<int> > q;
int n, m;
int main ()
{
    int T;
    cin >> T;
    while (T--)
    {
        scanf("%d%d", &n, &m);
        memset(d, 0, sizeof(d));
        for (int i = 0; i <= n; i++) v[i].clear();
        for (int i = 0; i < m; i++)
        {
            int x, y;
            scanf("%d%d", &x, &y);
            v[y].push_back(x);
            d[x]++;
        }
        for (int i = 1; i <= n; i++)
            if (!d[i]) q.push(i);
        stack<int>sk;
        while (!q.empty())
        {
            int x = q.top(); q.pop();
            sk.push(x);
            for (int i = 0; i < v[x].size(); i++)
            {
                int y = v[x][i]; d[y]--;
                if (!d[y])
                {
                    q.push(y);
                }
            }
        }
        int fir = 1;
        while (!sk.empty())
        {
            if (!fir) printf(" "); fir = 0;
            printf("%d", sk.top()); sk.pop();
        }
        puts("");
    }
    return 0;
}


手把手教你用Deep Single-Image Portrait Relighting实现人像光影重塑(附GitHub代码) 本文提供了一份详细的实战指南,手把手教你利用Deep Single-Image Portrait Relighting技术实现人像光影重塑。文章从环境搭建、核心原理拆解出发,逐步指导构建简易重光照流程,并探讨了使用预训练模型进行效果优化的进阶方法,最后附上避坑指南与常见问题排查,帮助开发者快速上手这一AI图像处理技术。 阅读详情

相关推荐

Fluent 2.5D动网格重构实战:涡旋压缩机复杂运动模拟指南

本文详细解析了Fluent 2.5D动网格重构技术在涡旋压缩机复杂运动模拟中的应用。通过对比传统方法,2.5D重构显著提升了计算效率和稳定性,特别适用于柱体类几何的网格处理。文章提供了从基础配置到参数优化的实战指南,包括关键设置步骤、常见问题排查及性能优化策略,帮助工程师有效解决动网格重构中的负体积和网格畸变问题。

weixin_28455801的博客 549

[ACM] POJ 3687 Labeling Balls (拓扑排序,逆向建边)

Labeling Balls Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 10161   Accepted: 2810 Description Windy has N balls of distinct weights from 1 unit to N

逆风的方向 更适合飞翔 2112

打通Creo与Matlab的桥梁:Simscape Multibody Link插件安装与配置全攻略

本文详细介绍了Simscape Multibody Link插件的安装与配置全流程,旨在帮助机械工程师和开发者打通Creo与Matlab/Simulink之间的桥梁,实现CAD模型到多体动力学仿真的高效转换。文章重点解析了版本兼容性、管理员权限、注册文件配置等关键步骤与常见故障排查方法,助力用户快速建立设计与仿真一体化工作流。

rrr55的博客 634

hdu 4857 逃生【反向拓扑排序】

题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=4857题意:中文不解释解法:input: 1 3 1 3 1 answer: 3 1 2 而不是 2 3 1 所以逆向建边 拓扑代码:#include<stdio.h> #include<iostream> #include<math.h> #include<stdlib.h> #in

mfcheer 781

广工计组f4b 8位12指令微程序CPU设计实验报告(内含可通过代码以及波形图)

实验目的:模型机是计算机的缩细模型,通过它可以理解计算机整机的结构和功能,理解CPU,存储器,中断控制器,接口的结构及实现逻辑和各部件之前的接口关系。本实验是设计一个8位模型计算机。:一条机器指令可以分解成一个微操作序列,这些微操作是计算机最基本的,不可再细分的操作。:在微程序控制的计算机中。将控制部件向执行部件发出的各种控制命令成为微命令,它是构成控制序列的最小单位。微命令和微操作是一一对应的。微命令是微操作的控制信号,微操作微命令的执行过程。2.:微指令是若干微命令的集合。

weixin_63692154的博客 4705

利用 Docker Distribution 搭建私有的 Docker Registry

1、拓扑

weixin_44983653的博客 1067

拓扑排序--逃生

逃生 糟糕的事情发生啦,现在大家都忙着逃命。但是逃命的通道很窄,大家只能排成一行。  现在有n个人,从1标号到n。同时有一些奇怪的约束条件,每个都形如:a必须在b之前。  同时,社会是不平等的,这些人有的穷有的富。1号最富,2号第二富,以此类推。有钱人就贿赂负责人,所以他们有一些好处。  负责人现在可以安排大家排队的顺序,由于收了好处,所以他要让1号尽量靠前,如果此时还有多种情况,就再让2号尽量...

duganlx的博客 474

影像组学分析流程中,图像分割前要做的事(图像预处理)

在InputVolume中无法找到自己想要重采样的序列,这时可以检查一下序列的Volume type是不是MRMLMulti。这时,Volume type将由MRMLMulti改为Scaler,随后即可在3D slicer中完成Resample Scaler Volume。2.1、重采样:通过3Dslicer中的Resample Scaler Volume实现。具体设置参数:spacing(1,1,1),Interpolation选择Bspline。2、图像预处理:重采样和标准化。

weixin_45011313的博客 3724

逃生(反向拓扑排序)

题目 糟糕的事情发生啦,现在大家都忙着逃命。但是逃命的通道很窄,大家只能排成一行。 现在有n个人,从1标号到n。同时有一些奇怪的约束条件,每个都形如:a必须在b之前。同时,社会是不平等的,这些人有的穷有的富。1号最富,2号第二富,以此类推。有钱人就贿赂负责人,所以他们有一些好处。负责人现在可以安排大家排队的顺序,由于收了好处,所以他要让1号尽量靠前,如果此时还有多种情况,就再让2号尽量靠前,如果还...

扬弃 625

Unity与iOS原生交互实战指南

C#(DllImport) → C 接口(extern "C") → Objective‑C / SwiftObjective‑C → UnitySendMessage → C#(GameObject + public 方法)在写.mm文件;在里面写;C# 用声明;调用它,参数就是 string / 数值等;在.mm里做你想做的 iOS 原生操作。在 Unity 里准备一个常驻 GameObject,比如;上面挂一个脚本,写;在 iOS 插件中用;

本博客聚焦游戏开发技巧、创业实战心得及大学热门课程干货。这里既有技术深度,也有思维广度,无论你是开发者、创业者还是高校学子,都能在这里找到适合自己的成长之路! 1357

5.3-集群电源模式解析

DSU-120 DynamIQ™集群支持9种电源模式,包括正常运行(ON)、完全断电(OFF)、三种数据保持模式(FUNC_RET、FULL_RET、MEM_RET)、两种调试模拟模式(OFF_EMU、MEM_RET_EMU),以及系统恢复模式(WARM_RST、DBG_RECOV)。这些模式通过智能管理电源状态,在保持数据完整性的同时实现功耗优化,并为系统调试和故障恢复提供支持。不同模式在RAM保持、逻辑断电和调试能力方面各有侧重,满足从正常运行到深度调试等不同场景需求。

baron-周贺贺-代码改变世界ctw 116

POJ-3687-Labeling Balls-(求最小字典序拓扑序列)逆向建图-拓扑排序

http://poj.org/problem?id=3687 题意:给n,m;表示n个物品,m个关系(可能有重边) (n) 给n个物品贴标签序号1-N, n个物品的重量分别是1-N 单位重量(容易混淆重量和序号) m条关系是 (a,b)表示  标号a的物品一定要比标号为b的物品轻 最后让你输出一个序列,标签为1-N的物品的重量(注意是输出重量,不是按最轻到最重的序号) (如果

缺氧 1576

YOLOv11来了,使用YOLOv11训练自己的数据集和推理(附YOLOv11网络结构图)

YOLOv11 由 Ultralytics 在 2024 年 9 月 30 日发布, 最新的 YOLOv11 模型在之前的 YOLO 版本引入了新功能和改进,以进一步提高性能和灵活性。YOLO11 在快速、准确且易于使用,使其成为各种对象检测和跟踪、实例分割、图像分类和姿态估计任务的绝佳选择。

在职AI算法工程师,擅长计算机视觉,YOLO目标检测、分割等,擅长web、pyqt界面可视化,好内容持续更新中,来这里跟大家一起学习,共同进步 28万+

HDU4857 逃生【逆向拓扑排序】【优先队列】

逃生 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 2928    Accepted Submission(s): 817 Problem Description 糟糕的事情发生啦,现在大家都忙着逃命。但是逃命的

初涉_代码世界 739

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

廖雪峰Python教程[完整版]

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

HDU 4857 - 逃生 题解

问题转化:将"小号尽量靠前"转化为"大号尽量靠后"反向思维:从后往前安排位置,最后反转序列数据结构选择最大堆保证每次选择当前可用的最大编号哈希集合去重避免入度计算错误算法核心:反向拓扑排序 + 最大堆 + 结果反转。

大家好,我是宗嗣令 888

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

HDU-4857 逃生 【反向拓扑排序模板题+死环判定】

C - 逃生 Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%I64d & %I64u Submit Status Description 糟糕的事情发生啦,现在大家都忙着逃命。但是逃命的通道很窄,大家只能排成一行。 现在有n个人,从1标号到n。同时有一些奇怪的约束条件,每个都形如:a必须在b之前。

DTL66的博客 542

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

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

hdu 4857 逃生(优先队列+逆拓扑排序)

题意是给你一些关系,来进行排序,前面的那个人一定在后一个人前面,也在那些没有交钱的人的前面。。 我们用逆拓扑排序,先把入度为零的数从大到小存入数组。然后就是一般的拓扑排序。。最后逆序输出 #include #include #include #include #include #include #include using namespace std; int m,n; vector

asuxiexie的专栏 640

HDU - 4857 逃生 拓扑排序 优先队列 贪心反向建图

Training 8 - C题 糟糕的事情发生啦,现在大家都忙着逃命。但是逃命的通道很窄,大家只能排成一行。 现在有n个人,从1标号到n。同时有一些奇怪的约束条件,每个都形如:a必须在b之前。 同时,社会是不平等的,这些人有的穷有的富。1号最富,2号第二富,以此类推。有钱人就贿赂负责人,所以他们有一些好处。 负责人现在可以安排大家排队的顺序,由于收了好处,所以他要让1号尽量靠前,如果此时还有多种情...

xukeke12138的博客 248

HDU 4857 逃生

HDU 4857 大意:如题所示。。。。。 思路:拓扑排序,逆向见图,用链式向前星,优先队列,逆序输出答案,主要就是用vector会T。 1 #include <iostream> 2 #include <algorithm> 3 #include <vector> 4 #include <queue> 5 #incl...

weixin_34186128的博客 94

拓扑排序算法解析:HDU 4857逃生问题实战

拓扑排序是处理有向无环图(DAG)中顶点线性排序的重要算法,其核心原理是通过不断移除入度为0的顶点来构建序列。该算法在任务调度、依赖关系处理等工程场景中具有广泛应用价值。以HDU 4857《逃生》问题为例,当需要满足特定约束条件且要求字典序最优解时,常规的Kahn算法需要结合优先队列进行优化。通过逆向建图和使用最大堆的策略,可以高效解决这类拓扑排序变种问题。本文涉及的图论基础和堆数据结构优化方法,对ACM竞赛选手和工程开发人员都具有实用参考意义。

weixin_34101914的博客 54

HDU-4857 逃生(反向拓扑排序 + 逆向输出)

逃生 Time Limit: 2000/1000 MS (Java/Others)Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 5703Accepted Submission(s): 1671 Problem Description 糟糕的事情发生啦,现在大家都忙着逃命。但是逃命的通道很窄...

diuliaoquan1673的博客 119

hdu 4857 逃生 拓扑排序+PQ,剥层分析

hdu4857 逃生 题目是求拓扑排序,但不是依照字典序最小输出,而是要使较小的数排在最前面。 一開始的错误思路:给每一个点确定一个优先级(该点所能到达的最小的点)。然后用拓扑排序+优先对列正向处理,正向输出。这是错误的。例如以下例子: 1 5 4 5 2 4 3 2 1 3 1 正确的解法:是反向建边。点大的优先级高,用拓扑排序+优先队列,逆向输出序列就可以...

weixin_33847182的博客 93

逃生 (hdu 4857 拓扑排序+优先队列)

糟糕的事情发生啦,现在大家都忙着逃命。但是逃命的通道很窄,大家只能排成一行。 现在有n个人,从1标号到n。同时有一些奇怪的约束条件,每个都形如:a必须在b之前。 同时,社会是不平等的,这些人有的穷有的富。1号最富,2号第二富,以此类推。有钱人就贿赂负责人,所以他们有一些好处。 负责人现在可以安排大家排队的顺序,由于收了好处,所以他要让1号尽量靠前,如果此时还有多种情况,就再让2号尽量靠前,如果还有多种情况,就让3号尽量靠前,以此类推。 那么你就要安排大家的顺序。我们保证一定有解。

残阳止水 620

hdu4857(反向拓扑排序)

折腾了一下午,一开始以为从1....n分别找出反向路径进行输出,然后就是正确的姿势了,提交了一两把,发现是错的,比如下面的case:   4 3     4 2   2 1   3 1   正解应该是4 2 3 1, 而我的是3 4 2 1,后面的2的位置明显靠后,然后看了想了一下符合反向拓扑排序的规律,所以建边的时候反着建就可以了。   当然输出也要是逆向的,这个时候借助一下栈就

kevin_liu11的专栏 512

逃生_拓扑排序

题目质量非常好 题意很简单,用的知识点也很简单 拓扑排序+ 优先队列 也可以在杭电上提交 bestcoder round1 逃生 一个朴素的想法: 正常建图 , 先把入度为0的点加入优先队列,小的在前,直接拓扑排序 BUT WA WA的毫无情谊 为什么呢?   参考这位大佬的博客 http://blog.youkuaiyun.com/Lawliet1993/arti...

weixin_30776273的博客 172

cf 236 div2 E Strictly Positive Matrix 矩阵阶乘和图上路径(计数)(可达)(最优值)问题

402E - Strictly Positive Matrix / 403C - Strictly Positive Matrix Let's look at the matrix a as a connectivity matrix of some graph with n vertices. Moreover, if aij > 0, then we have directed

冰 2058
上一篇: Codeforces Round #258 (Div. 2)Devu and Flowers 容斥原理
下一篇: hdu 4858 项目管理 图分治 (复合算法)
guognib
博客等级 码龄14年 29粉丝 121原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值