首页 > 其他分享 >P3243 菜肴制作

P3243 菜肴制作

时间:2023-11-06 10:34:48浏览次数:30  
标签:菜肴 int tot read P3243 反图 制作 字典

这道题难点就在如何贪心,这里要我们让最小的尽可能优先做而不是字典序最小,那我们让大的尽可能后做,是不是就可以把最小的尽可能优先做呢?而这样相当于是反过来的序列字典序最大,所以我们跑个反图最大字典序拓扑即可,即建反图以后用优先队列维护最大点。

\(Code\)

const int N=1e5+5;
int inn[N],ans[N],tot;
vector<int>f[N];
priority_queue<int>Q;
int main(){
    for(int T=read();T--;tot=0){
        int n=read(),m=read();
        for(int i=1;i<=n;i++)f[i].clear(),inn[i]=0;
        for(int i=1;i<=m;i++){
            int u=read(),v=read();
            f[v].push_back(u),inn[u]++;
        }
        for(int i=1;i<=n;i++)if(!inn[i])Q.push(i);
        while(!Q.empty()){
            int x=Q.top();Q.pop();
            ans[++tot]=x;
            for(int y:f[x])
                if(!--inn[y])Q.push(y);
        }
        if(tot==n)for(int i=n;i;--i)printf("%d ",ans[i]);
        else printf("Impossible!");
        puts("");
    }
    return 0;
}

标签:菜肴,int,tot,read,P3243,反图,制作,字典
From: https://www.cnblogs.com/NBest/p/17811998.html

相关文章

  • Vue项目使用“花生壳“制作内网穿透---->步骤
     软件下载注册登录实名认证设置映射修改vue.config.js: const{defineConfig}=require('@vue/cli-service')module.exports=defineConfig({transpileDependencies:true,devServer:{historyApiFallback:true,disableHostCheck:true,//allowedHos......
  • revit 制作屋顶
    1、迹线屋顶2、编辑屋顶3、绘制边界线4、调整需要有坡度的边......
  • AI数字人制作工具SadTalker教程
    AI数字人(ArtificialIntelligenceDigitalHuman)是一种采用人工智能技术和仿真技术创建的虚拟人物。它结合了人类外貌、语音和认知能力,能够与人类进行交流和互动。AI数字人的外貌通常由计算机图形学和虚拟现实技术生成,可以根据需要设计不同的外表特征、面部表情和肢体语言。而......
  • Ajax + java Servlet 制作Web进度条
     运行效果图  index2.jsp <%@pagelanguage="java"pageEncoding="UTF-8"%><!DOCTYPEHTMLPUBLIC"-//W3C//DTDHTML4.01Transitional//EN"><html><head><scripttype="text/javascript"langua......
  • Ableton Live 11 Suite:Mac上最顶级的音乐制作神器
    AbletonLive11Suite是一款备受赞誉的音乐制作软件,它为Mac用户带来了前所未有的音乐制作体验。这款卓越的软件不仅具备直观的界面和卓越的音频编辑功能,还集成了众多其他令人惊叹的功能,为用户提供了从构思到发行的全方位音乐制作服务。→→↓↓载AbletonLive11SuiteMac版Ab......
  • 上海APP制作:从0到1,一站式解决方案助您轻松上手
    大家好,我是上海拔俗网络的小编,今天为大家带来一篇关于上海APP制作的专业又风趣幽默的文章。在这个信息爆炸的时代,拥有一款自己的APP已经成为了越来越多人的追求。那么,如何才能让自家的APP在众多竞争中脱颖而出呢?上海拔俗网络为您提供一站式解决方案,让您轻松上手,从0到1!首先,我们要......
  • Python中文分词、词频统计并制作词云图
    中文分词、词频统计并制作词云图是统计数据常用的功能,这里用到了三个模块快速实现这个功能。中文分词、词频统计importjiebafromcollectionsimportCounter#1.读取文本内容并进行分词withopen('demo.txt',mode='r',encoding='gbk')asf:report=f.read()words......
  • 制作自己的min linux(CentOS7.6)
    1.在现有的linux添加一块大小为20G的硬盘2.启动现有的linux。通过fdisk来给我的/dev/sdb进行分区 3.接下来,对/dev/sdb的分区进行格式化[root@localhost~]#mkfs.ext4/dev/sdb1[root@localhost~]#mkfs.ext4/dev/sdb2 4.创建目录,并挂载新的磁......
  • 【动画制作编辑软件】Adobe Animate CC 2018 Mac 中文汉化版
    AnimateCC2018提供众多实用设计工具,主要用于html动画编辑,设计适合游戏、应用程序和Web的交互式矢量动画,可帮助我们不用写代码的情况下完成简单的交互动效实现,借助这款业界领先的动画工具集,让网页设计人员轻松制作适用于网页、数位出版、多媒体广告、应用程序、游戏等用途的互动式......
  • 易语言银行余额虚拟生成器制作,提供源码思路,仅供学习
    今天这边带来的是一个图片生成器,是用易语言进行开发的,整个代码我算了一下不超过10行,然后就需要一个图片框组件和三个编辑框,三个标签,一个按钮就能实现,真的非常非常简单,大家可以照猫画虎哈,这也仅仅只是为大家做的一个演示示范。软件截图:程序集源码分享:.版本2.程序集窗口程......