[BZOJ4010]HNOI2015菜肴制作|拓扑排序+堆

Win11显卡驱动安装失败的全面解决方案 Windows 11显卡驱动安装失败是一个比较常见的问题,但通过上述方法,我们可以有效地解决这一问题。方法一通过调整组策略编辑器的驱动程序安装策略,可能解决一些因签名问题导致的安装失败;而方法二则通过重装Windows 11系统,为系统提供一个全新的、干净的环境,从而可能解决更复杂的安装问题。在实际操作中,用户可以根据具体情况选择合适的方法来解决显卡驱动安装失败的问题。 阅读详情

一开始看成字典序最小。。后来想到不对又YY了一种奇怪的方法,不过还是错的。。

    正解是倒着来,边都倒着加,然后求一个字典序最大的拓扑序,反过来就是答案了。。一开始想不通为什么是这样,仔细想想应该没错。。如果没有选最大的,就让一个更小的放在了后面,而它本可以在更前的,所以一定要选最大的。。感觉和NOI2009变换序列的思路有点像,倒过来把要先满足的放到后面它自然就会满足了。。

#include<cstdio>
#include<iostream>
#include<memory.h>
#define N 100005
using namespace std;
struct edge{
	int e,next;
}ed[N];
int T,n,m,i,j,ne,s,e,nd,heap[N],in[N],u[N],a[N],ans[N];
bool f;
void add(int s,int e)
{
	ed[++ne].e=e;ed[ne].next=a[s];a[s]=ne;
}
bool dfs(int x)
{
	u[x]=-1;
	bool f=true;
	for (int j=a[x];j;j=ed[j].next)
	{
		if (u[ed[j].e]==-1) return false;
		else if (u[ed[j].e]==0) f=f&&dfs(ed[j].e);
	}
	u[x]=1;
	return f;
}
void up(int x)
{
	while (x>1&&heap[x]>heap[x>>1]) swap(heap[x],heap[x>>1]),x>>=1;
}
void ins(int x)
{
	heap[++nd]=x;
	up(nd);
}
void del()
{
	heap[1]=heap[nd--];
	int x=1;
	while (x*2<=nd)
	{
		x<<=1;
		if (x<nd&&heap[x+1]>heap[x]) x++;
		if (heap[x]>heap[x>>1]) swap(heap[x],heap[x>>1]);else break;
	}
}
int main()
{
	freopen("dishes.in","r",stdin);
//	freopen("dishes.out","w",stdout);
	scanf("%d",&T);
	while (T--)
	{
		scanf("%d%d",&n,&m);
		for (i=1;i<=n;i++) a[i]=0,in[i]=0,u[i]=0;
		ne=0;
		for (i=1;i<=m;i++)
		{
			scanf("%d%d",&s,&e);
			add(e,s);in[s]++;
		}
		f=true;
		for (i=1;i<=n;i++)
			if (!u[i]) f=f&&dfs(i);
		if (!f)
		{
			printf("Impossible!\n");
			continue;
		}
		nd=0;
		for (i=1;i<=n;i++)
			if (!in[i]) ins(i);
		for (i=n;i;i--)
		{
			ans[i]=heap[1];
			del();
			for (j=a[ans[i]];j;j=ed[j].next)
				if (--in[ed[j].e]==0) ins(ed[j].e);
		}
		for (i=1;i<=n;i++) printf("%d ",ans[i]);printf("\n");
	}
}


【LE Audio】CAP精讲[1]: 从理论到实操,CAP 协同流程入门全攻略 LEAudio生态中的CommonAudioProfile(CAP)是一个关键协同框架,它通过整合基础音频协议(BAP/VCP/MICP等)构建多设备协同能力。CAP定义了三大核心功能:音频流管理、设备组控制和统一交互服务,解决了传统蓝牙音频在多设备场景下的协同痛点。其规范历经v1.0到v1.0.1的优化,修正了角色定义、连接流程等关键模块,提升设备兼容性。CAP采用严格的语言约定(shall/must/should)和术语体系(ContextType/CCID/协同集),确保不同厂商设备能相互理解。 阅读详情

相关推荐

数据结构与算法 —— 最短路径Dijkstra算法(迪杰斯特拉)详细图解以及python实现

前两章我们讲到了关于图的基本知识,和广度/深度优先搜索。本章,我们将介绍加权图和最短路径的相关知识。最短路径和最小生成树是图论中常见的问题。最短路径是指在一个图中找到两个节点之间的最短路径,最小生成树是指在一个图中找到一个连通子图,使得所有节点都能够互相到达,且总权值最小。最短路径算法常见的有floyd算法(弗洛伊德算法)和 dijkstra算法(迪杰斯特拉)。本文只介绍dijkstra算法。最短路径运用非常广泛,比如在导航系统中,确定两个地点间哪条路线最短;

‘’ 2万+

【bzoj4010】 HNOI2015—菜肴制作

http://www.lydsy.com/JudgeOnline/problem.php?id=4010(题目链接) 题意   给出一张无向图要求出一个拓扑序列满足1的位置最靠前 ,在保证上面的条件下使2的位置最靠前 ,在保证上面的条件下使3的位置最靠前 …… Solution   这个问题就等价于是倒过来的字典序最大。构造逆拓扑序,套个堆每次选出编号最大的加入答案,输出答案时从后往前...

weixin_30455023的博客 110

Lumerical INTERCONNECT 中的自相位调制 (SPM) 仿真实践指南

本文详细介绍了在Lumerical INTERCONNECT中进行自相位调制(SPM)仿真的实践指南。从SPM的基础物理原理出发,深入解析非线性薛定谔方程和克尔效应,到INTERCONNECT中NLSE波导元件的配置技巧,以及时域与频域中SPM效应的观测方法。文章还提供了常见问题排查和进阶联合仿真技巧,帮助用户高效完成从仿真到实测的校准过程。

weixin_42565652的博客 188

bzoj4010 拓扑排序优先最小值

优先选最小值并不是直接建图进行拓扑排序,优先选最小值不同于求拓扑排序的最小字典序。 思路:反向建图,优先选取最大值进行拓扑排序,最后倒序输出数组(或者记录的时候可以倒着记录,最后正着输出) #include &lt;bits/stdc++.h&gt; using namespace std; typedef long long LL; const int inf=0x3f3f3f3f; co...

qq_41755258的博客 371

门控时钟(clock gating)的DFT设计

在数字IC芯片中,时钟树的功耗占比可能高达30%,因此一般会采取门控时钟的方式来降低该部分的功耗。所谓门控时钟,就是在芯片实际工作过程中,有些信号或者功能并不需要一直开启,那么就可以在它们不用的时候将其时钟信号关闭。这样一来信号不再翻转,从而能够有效减少动态功耗。 目前门控时钟都采用集成门控时钟单元(ICG,integrated clock gating cell),其结构如下。由一个latch和一个与门(也有的是或门)组成,可以过滤掉EN信号中的毛刺。一般的工艺库中都会有专门的ICG以供调用。 插入IC

weixin_44746697的博客 3877

【深度学习驱动流体力学】Python流体力学Ansys Fluent

PyFluent 是一个将 Python 编程语言与 Ansys Fluent 流体动力学 (CFD) 仿真软件集成的工具。它允许用户通过 Python 脚本来控制和自动化 Fluent 中的仿真任务,实现从预处理、求解到后处理的全流程控制。PyFluent 结合了 Python 的灵活性和 Fluent 的强大功能,提供了一种高效且灵活的 CFD 仿真方法。PyFluent 是一个强大而灵活的工具,使用户能够通过 Python 脚本全面利用 Ansys Fluent 的功能。

源代码杀手的博客 3124

BZOJ-4010 菜肴制作 贪心+堆+(拓扑图拓扑序)

无意做到...char哥还中途强势插入干我...然后据他所言,看了一会题,一转头,我爆了正解....可怕 4010: [HNOI2015]菜肴制作 Time Limit: 5 Sec Memory Limit: 512 MB Submit: 1001 Solved: 490 [Submit][Status][Discuss] Description 知名美食家...

weixin_30767921的博客 159

《UDS协议从入门到精通》系列——图解0x23:通过地址读取内存

如何读取ECU中指定内存地址的数据?图解UDS 0x23服务带你快速上手!!

车载系统攻城狮 2623

【拓扑】BZOJ4010 [HNOI2015]菜肴制作

题面在这里首先要明确,题意不等价于求最小字典序例如:n=4,3→1,2→4n=4,3\rightarrow 1,2\rightarrow 4此时应输出31243124因为题目要求的是在保证1…i1\dots i先完成的情况下,再考虑i+1i+1所以求反图的最大拓扑字典序即可示例程序:

linkfqy 635

11、iOS设备逻辑数据分析全解析

本文深入解析iOS设备中的逻辑数据,涵盖图像相关数据库(Photos.sqlite和PhotosAux.sqlite)、录音文件、iPhoto照片存储结构、多媒体文件、第三方应用程序、社交网络应用(如Twitter、Skype、Facebook等)以及苹果相关应用(如Google Mobile、Bing)的数据存储结构和取证方法。此外,还介绍了文档类应用(如Pages、Numbers、Documents To Go)的文件存储结构及恢复方法。适用于iOS取证、数据挖掘和数字调查领域。

rain6的博客 226

基于FPGA的多级CIC滤波器实现四倍插值

基于FPGA的多级CIC滤波器实现四倍插值 原文链接:基于FPGA的多级CIC滤波器实现四倍插值 在《基于FPGA的多级CIC滤波器实现四倍抽取一》和《基于FPGA的多级CIC滤波器实现四倍抽取二》中我们先来了解滑动平均滤波器、微分器、积分器以及梳状滤波器原理以及它们的幅频响应。此篇我们将用verilog实现基于FPGA的多级CIC滤波器实现四倍插值。 1 CIC滤波器的基本概述 CIC(积分梳状...

baidu_34971492的博客 3142

[BZOJ 4010] 菜肴制作

Link: BZOJ 4010 传送门 Solution: 思路挺妙的一题 一看到有先后的约束关系,肯定要拓扑排序 而且对所有的数要求依次最优(不是字典序最小),看起来贪心选最小的就可以了 但从前往后贪心会出现问题: 对于两个数$x,y$,其中$x<y$,如果$y$无约束关系,其会出现在$x$之前 为了解决这样的问题,发现只要反向建边,从后往前拓扑排序同时贪心选取最大的...

weixin_30566063的博客 120

基于深度学习的茶叶等级检测识别系统:YOLOv8 + UI界面 + 数据集完整实现

随着深度学习技术的不断进步,基于计算机视觉的茶叶等级检测系统可以大大提高检测效率,提供客观一致的评估标准。本系统将利用YOLOv8进行茶叶等级的检测与识别,通过图形用户界面(UI)实现与用户的交互,提供茶叶等级分类的实时反馈。本文将详细介绍如何使用YOLOv8结合UI界面,建立一个完整的茶叶等级检测与识别系统,包括数据集的准备、模型的训练、UI的设计及完整的代码实现。本系统的目标是通过深度学习技术,结合YOLOv8模型和图形用户界面(UI),实现对茶叶等级的自动化检测与识别。

YOLO 972

bzoj 4010: [HNOI2015]菜肴制作 拓扑排序+堆

题意知名美食家小 A被邀请至ATM 大酒店,为其品评菜肴。 ATM 酒店为小 A 准备了 N 道菜肴,酒店按照为菜肴预估的质量从高到低给予 1到N的顺序编号,预估质量最高的菜肴编号为1。由于菜肴之间口味搭配的问题, 某些菜肴必须在另一些菜肴之前制作,具体的,一共有 M 条形如“i 号菜肴‘必须’ 先于 j 号菜肴制作”的限制,我们将这样的限制简写为< i,j>。现在,酒店希望能求 出一个最优

beginend 755

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

BZOJ 4010 HNOI2015 菜肴制作 拓扑排序+堆

题目大意:给定一张无向图,求一个拓扑序,使: 1的位置最靠前 在保证上面的条件下使2的位置最靠前 在保证上面的条件下使3的位置最靠前 …… 注意不是字典序最小!例如样例3建立反图,对反图求字典序最小的拓扑序,然后反向输出即可。 我不知道为什么。真的不知道。 求个解答在线等。#include <cstdio> #include <cstring> #include <iostream>

世界 2748

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

bzoj4010 [HNOI2015]菜肴制作

bzoj4010 [HNOI2015]菜肴制作 求出一个 \(n\) 的排列满足 \(m\) 个形如 \((x,\ y)\) 的限定条件,表示 \(x\) 必须在 \(y\) 之前出现,且使得在满足所有限定条件的情况下, \(1\) 尽量优先,满足 \(1\) 尽量优先的情况下 \(2\) 尽量优先…… \(n,\ m\leq10^5\) 图论,拓扑排序,贪心 原题所求显然与最小字典序有差异...

weixin_30887919的博客 79

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

[BZOJ4010][HNOI2015]菜肴制作(拓扑排序+堆)

看到题目,可以想到拓扑排序。但是如果要求字典序最小的排列,那就错了。 可以举出反例:44种菜肴,限制为<2,4><3,1><2,4><3,1>, 那么字典序最小的是2,3,1,42,3,1,4,但题目要求的最优解是3,1,2,43,1,2,4。 继续考虑,可以发现,如果最后一个数字在合法范围内尽可能大,那么这样是绝对有利的。 因为如果设最后一个数字是xx,那么除了xx之外的所有数都不会被放到

女装的你,如此好看! 371

【bzoj4010】[HNOI2015]菜肴制作 拓扑排序+堆

题目描述 给你一张有向图,问:编号-位置序(即每个编号的位置对应的序列)最小(例如1优先出现在前面,1位置相同的2优先出现在前面,以此类推)的拓扑序是什么? 输入 第一行是一个正整数D,表示数据组数。 接下来是D组数据。对于每组数据: 第一行两个用空格分开的正整数N和M,分别表示菜肴数目和制作顺序限制的条目数。 接下来M行,每行两个正整数x,y,表示“x号菜肴必须先于y号菜肴制...

weixin_30757793的博客 105

React Native集成鸿蒙实战:原生桥接与适配方案

跨平台开发的核心原理是共享JS业务逻辑,但每一端都需要原生宿主来承载运行时与UI渲染。React Native在Android和iOS上分别依赖Java/Kotlin和Objective-C/Swift实现,而HarmonyOS NEXT不再兼容APK,必须基于ArkTS和ArkUI构建新的原生端。理解ArkTS的静态类型与装饰器、ArkUI的声明式UI体系,以及N-API的桥接机制,是完成RN鸿蒙适配的关键。存量RN项目更适合采用增量鸿蒙化路线,保留现有业务代码,通过补充鸿蒙原生壳和模块桥接,实现最小可用

weixin_34406086的博客 422

BZOJ4010[HNOI2015]菜肴制作——拓扑排序+堆

题目描述 知名美食家小 A被邀请至ATM 大酒店,为其品评菜肴。 ATM 酒店为小 A 准备了 N 道菜肴,酒店按照为菜肴预估的质量从高到低给予 1到N的顺序编号,预估质量最高的菜肴编号为1。由于菜肴之间口味搭配的问题, 某些菜肴必须在另一些菜肴之前制作,具体的,一共有 M 条形如“i 号菜肴‘必须’ 先于 j 号菜肴制作”的限制,我们将这样的限制简写为<i,j>。现在...

weixin_33919950的博客 131

bzoj 4010 [HNOI2015]菜肴制作 贪心+堆+拓扑排序

题面 题目传送门 解法 直接做似乎不太好做 考虑倒着做,将边反向,然后求出字典序最大的拓扑序,最后将这个拓扑序翻转即为答案 为什么这个是正确的?? 感觉理性分析一下就可以了吧 时间复杂度:\(O(n\ log\ n)\) 代码 #include <bits/stdc++.h> #define N 100010 using namespace std; template <type...

weixin_30420305的博客 120

bzoj4010: [HNOI2015]菜肴制作(拓扑排序+贪心+堆)

  这题不是求最小字典序。。。撕烤了半个小时才发现不对劲T T   这题是能让小的尽量前就尽量前,无论字典序...比如1能在2前面就一定要在2前面...   显然是要先拓扑排序,让小的尽量前转化成让大的尽量往后丢,这样实际上就跟字典序无关了。于是建反向图,用堆维护一下入度为0的最大值来弹出就好了。   以后拓扑排序别用for弹栈了T T WA了好久 #include&lt...

weixin_30488085的博客 75

bzoj4010【HNOI2015】菜肴制作

拓扑排序——除夕快乐!

AaronPolaris 3005

【BZOJ 4010】 [HNOI2015]菜肴制作

易错的思路题+topsort~

Regina8023 2066

BZOJ_4010_[HNOI2015]菜肴制作_拓扑排序+贪心

BZOJ_4010_[HNOI2015]菜肴制作_拓扑排序+贪心 Description 知名美食家小 A被邀请至ATM 大酒店,为其品评菜肴。 ATM 酒店为小 A 准备了 N 道菜肴,酒店按照为菜肴预估的质量从高到低给予 1到N的顺序编号,预估质量最高的菜肴编号为1。由于菜肴之间口味搭配的问题, 某些菜肴必须在另一些菜肴之前制作,具体的,一共有 M 条形如“i 号菜肴...

164

bzoj 4010: [HNOI2015]菜肴制作

bzoj 4010: [HNOI2015]菜肴制作 Description 知名美食家小 A被邀请至ATM 大酒店,为其品评菜肴。 ATM 酒店为小 A 准备了 N 道菜肴,酒店按照为菜肴预估的质量从高到低给予1到N的顺序编号,预估质量最高的菜肴编号为1。由于菜肴之间口味搭配的问题,某些菜肴必须在另一些菜肴之前制作,具体的,一共有 M 条形如“i 号菜肴‘必须’先于 j 号菜肴制...

Unlimited的博客 495
上一篇: [BZOJ1038]ZJOI2008瞭望塔|半平面交
下一篇: [BZOJ4008]HNOI2015亚瑟王|期望DP
Tag_king
博客等级 码龄12年 15粉丝 164原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值