hdu-6301-思路贪心

HFSS实战项目——高带外抑制特性SIW带通滤波器 本文对单级滤波器和双级滤波器的设计、工作原理及仿真结果进行了详细分析,并验证了双级SIW带通滤波器在性能方面的优越性,为微波通信系统中滤波器的设计和应用提供了重要参考。 阅读详情

这个题如果从直接的想法做很简单,但是时间肯定过不去,难处理的在于如何把用完了的数字重新利用

这个题解是dls的代码,大体思路是用pre[i]记录i所在的区间的左端点,然后设置一个标记用来记录已经处理完的位置(不是填完数字的位置,是既填完了数字又将可利用的数字处理完了的位置),当标记小于pre[i]时表明:从标记到新的区间左端这个区间的数字可以重新利用了,然后用set回收一下。这样就解决了这个问题。

#include <iostream>
#include <cstring>
#include <algorithm>
#include <cstdio>
#include <cmath>
#include <vector>
#include <queue>
#include <set>

using namespace std;

const int maxn=100000;
int t,n,m,l,r;
int ans[maxn+5],pre[maxn+5];
set<int> st;

int main()
{
    scanf("%d",&t);
    while(t--)
    {
        st.clear();
        scanf("%d%d",&n,&m);
        for(int i=1;i<=n;i++) pre[i]=i;
        for(int i=1;i<=m;i++)
        {
            scanf("%d%d",&l,&r);
            pre[r]=min(pre[r],l);//记录每个区间,即以r为右端点的区间的左端点是l
        }
        for(int i=n-1;i>=1;i--) pre[i]=min(pre[i],pre[i+1]);//从后面开始将记录的左端点展开
        //最终使得pre数组记录的是到达点i的区间是从哪个端点开始的,即i所在的区间的左端点是pre[i]
        int p1=1;//记录可利用的数字的区间的左端点
        for(int i=1;i<=n;i++) st.insert(i);
        for(int i=1;i<=n;i++)
        {
            while(p1<pre[i])//每次当标记小于当前这个区间的左端点时,表示从标记到左端点前的数字都可以在新的区间里使用了
            {
                st.insert(ans[p1]);
                p1++;
            }
            ans[i]=*st.begin();
            st.erase(ans[i]);
        }
        for(int i=1;i<=n;i++)
            printf("%d%c",ans[i]," \n"[i==n]);//大佬的操作,学到了就膜一蛤Orz
    }
    return 0;
}

 

【半导体工业实战】C#.NET开发SECS/GEM协议上位机(完整可运行源码+全进制转换工具类+工业级通信封装) 在半导体这个高精尖的工业领域,SECS/GEM协议是设备通信的基石,而C#.NET凭借其稳定性、高效的字节处理能力、Windows工控机的深度适配,成为SECS上位机开发的最优选择。本文从半导体行业的专属认知出发,提供了完整的进制转换工具类、工业级的SECS通信封装、实战的报文解析与业务调用示例、半导体专属的避坑指南,所有内容均为真实项目经验的沉淀,无空洞理论、无AI冗余文字,所有源码均可直接编译运行、无缝移植到半导体项目中。半导体工控开发的核心,从来不是炫技,而是。 阅读详情

相关推荐

从原始数据到农学模型:DJI M3M/P4M多光谱影像全链路处理实战

本文详细介绍了使用DJI M3M/P4M多光谱无人机进行农学建模的全链路流程。核心在于强调辐射标定的首要性,它将原始DN值转换为具有物理意义的反射率,是确保后续植被指数计算与模型反演准确性的基石。文章通过大疆智图和Pix4Dfields的实战演示,手把手指导完成数据处理、影像镶嵌及光谱信息提取,最终构建从光谱指数到叶面积指数等关键农学参数的反演模型,实现精准农业分析。

weixin_29281941的博客 243

HDU6301(2018多校第一场)

Bryce1010模板 http://acm.hdu.edu.cn/showproblem.php?pid=6301 队友AC的,没怎么看 #include&lt;iostream&gt; #include&lt;stdio.h&gt; #include&lt;string.h&gt; #include&lt;algorithm&gt; #include&lt;cmath&gt; #incl...

Bryce1010's Blog 911

小波变换(Wavelet Transform)原理及介绍

小波变换是一种多分辨率时频分析工具,克服了傅里叶变换无法定位时间信息的缺陷。通过可伸缩平移的母小波,它能同时捕捉信号的高频细节(短时特征)和低频轮廓(整体趋势)。其核心原理是利用不同尺度的小波基与信号进行内积运算,生成时频域系数矩阵。小波变换具有动态分辨率特性,高频部分时间精度高,低频部分频率分辨率好。主要应用包括瞬态事件检测、信号降噪、数据压缩(如JPEG2000)和压缩感知(如快速MRI)。

qq_42758052的博客 5486

HDU 6301 Distinct Values(优先队列)/(set)

Distinct Values Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 529    Accepted Submission(s): 125   Problem Description Chiaki has an array...

辞树 772

xHCI驱动学习(1) 核心数据结构

虽然Linux内核拥有C语言构建的身体,但它骨子里散发的是面向对象的气质,这一个个的对象就是struct。面对一个内核模块的时候,首先要找出关键的struct和它们之间的关系,才能摸清代码的骨骼脉络。今天来理清USB xHCI相关的数据结构类型usb_hcd、xhci_hcd、hc_driver和全局变量xhci_pci_driver、xhci_hc_driver、xhci_pci_hc_driver之间的关系。

1万+

1.1.4 运用防火墙实现入侵防御

摘要:本文详细介绍了某公司网络拓扑中防火墙FW1的配置过程。主要内容包括:1)通过web界面登录防火墙;2)配置三个接口的IP地址及所属安全区域;3)创建两个入侵防御配置文件(anti_untrust和anti_trust);4)配置安全策略untrust2dmz和trust2dmz,分别允许公网/内网访问WWW服务器;5)保存配置。操作步骤配有详细截图说明,涉及接口配置、安全区域划分、入侵防御策略设定等关键环节,最终实现内外网对服务器Server1的安全访问控制。(149字)

Ljs040411的博客 2134

hdu 6301(思路+数据结构)

开始往线段树上想,死活想不出来,最后队友往队列上想,遇到了瓶颈,最后半个小时给我说的思路。突然明白,然后比赛写错个地方,来不及了,赛后改的 #include <iostream> #include <cstring> #include <algorithm> #include <cstdio> #include <queue&gt...

weixin_30344131的博客 108

台达B3伺服电机485通讯的调试过程

最近上了一项目,没办法直接把B3伺服接到PLC上去,怎么办?偶说试下直接电脑通过100多米的485线控制好了,定型前的测试就这样展开了。 1、焊CN1口 如果不安装CN1,是开不了机的,要报很多错误,比如SERV EMG ALERT, 上限报警,下限报警什么的,怎么办?直接焊好CN1头子吧,烦了点,但是必要的。 主要接的是11,9,10,32,31,30几个脚,按照图上连接好就是了。 2、 接线路 按照上面的图,接上伺服电机线,编码器线,电源线,包括限位常闭开关、485连线等,就完..

shidong01的博客 1万+

[HDU6301]Distinct Values【模拟】

6301 Distinct Values 这题是因为实在没事干了,我就随意打了一下,结果就A掉了。 想法很简单,用堆维护在这个区间没有出现过最小数(因为我们要字典序最小,肯定要越高位越小,所以肯定先放小的数),我们可以将区间全部投射到一维的数组上,然后枚举这个位置,肯定选择最大的这个覆盖区间,放置这个区间中没有的最小的数。 然后我们考...

aiweiluan5095的博客 207

Spring AI Alibaba实战训练营-16 NL2SQL (自然语言转 SQL)应用开发指南

本文介绍了一个基于AI的智能BI应用开发项目,主要实现自然语言转SQL(NL2SQL)功能,包含对话模块、MCP模块、向量数据管理模块。项目采用Spring AI Alibaba框架,集成通义千问大模型,支持内存向量库和AnalyticDB向量数据库两种存储方案。重点展示了chat模块的三个控制器实现:AnalyticNl2SqlController用于生产环境,SimpleChatController适用于开发测试,Nl2sqlForGraphController支持基于图的复杂对话流程。系统通过将业务知

program哲学 1587

【瑞芯微px30】【RTL8363】【一】驱动移植-网卡驱动概述

linux rtl8363驱动移植

weixin_34799243的博客 1180

hdu 6301

问题描述:Chiaki has an array of n positive integers. You are told some facts about the array: for every two elements ai and aj in the subarray al..r (l≤i&lt;j≤r), ai≠ajholds. Chiaki would like to find a l...

YVVVVY的博客 755

一键开关机电路

一键开关机电路

让你爱上电路设计 4180

HDU6301 Distinct Values(2018HDU多校联赛第一场,思路,贪心,set)

Problem Description Chiaki has an array of n positive integers. You are told some facts about the array: for every two elements ai and aj in the subarray al..r (l≤i Input There are mult...

riba2534的博客 853

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

HDU 6301 Distinct Values 思维

/** D:Distinct Values 链接:http://acm.hdu.edu.cn/showproblem.php?pid=6301 题意:给出m个区间,使得每个区间在长度为n的数组内不存在重复的数并使得该数组字典序最小; 分析:开始可能想复杂了许多,可能也是没有屡清思路吧; 由于区间是递增的,显然是可以从左往右进行贪心的; 对于区间不断的右移,窝们将l移动至a[i].l间时 ,也就是...

布呗之路 268

efm32 入门.pdf

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

HDU 6301 Distinct Values【贪心】

传送门:HDU 6301 Distinct Values Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Problem Description Chiaki has an array of n positive integers. You are told some fa...

Waiting For You 210

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

Distinct Values HDU - 6301(贪心)HDU 7.23多校网络赛

Distinct Values HDU - 6301 先感谢下在B站直播讲题的清华大佬。ˋ( ° ▽、° ) 题目: Chiaki has an array of n positive integers. You are told some facts about the array: for every two elements ai and aj in the subarray a...

songziqi98的博客 365

HDU - 6301 Distinct Values 优先队列+贪心

题目链接 题意:多组数据,每组数据 nnn 个数,每组数据给出 mmm 个区间,对于每个区间,区间内所有数都互不相等。求一种给 nnn 个数设置值,且这个值 xxx 在 [1,n][1,n][1,n] 内的方法,若有多种,求字典序最小的一种。 思路: 1.先考虑字典序最小,对于当前要填数字的这一位数,我们在它所能填写的数中选数字最小的,然后考虑下一位,即可保证求出来的答案是字典序最小的了。 2.求...

a302549450的博客 201

HDU 6301.Distinct Values-贪心、构造字典序最小的数列 (2018 Multi-University Training Contest 1 1004)...

HDU6301.Distinct Values 这个题就是给你区间要求区间内的数都不相同,然后要求是字典序最小,直接贪心走一遍,但是自己写的时候,思路没有错,初始化写挫了。。。 将区间按左端点小的排序,如果相同就按右端点大的排序,因为右端点大的肯定满足右端点小的。然后直接标记数组记录当前区间已有的数,然后将没有的数字填到里面。注意初始化就可以了。 代码: 1 ...

weixin_30819163的博客 242

【HDU6301】set+贪心

1.题目链接。题目大意:一个长度为n的数组,现在对这个数组做一些限制:在区间[l,r]里面不能有相同的数出现。输出满足条件并且字典序最小的那个数组。 2.思路有很多,不过发现可行的不是很多。大佬的队友用并查集写过了(神仙,完全想不到并查集的思路)。最后的做法就是:对于每一个数据,用pre[i]记录一下与当前的这个点i不能出现相同的数据的最左边的那个位置。也就是pre[i]=min(pre[i],...

YG爱木木 231

HDU 6301 Distinct Values 贪心

Distinct Values 贪心 题目大意:给定串的长度n,还有若干个子串的起始位置和终止位置,每个子串内的数字不可以相等。子串可以重叠,要求给整个串赋值,做到任何子串内没有相同数字,并且总的字典序最小。 解题思路 :其实是贪心,一个[l,r]区间维护,每次把扫过的子串没重叠的部分丢到set中,遇到重叠部分的时候就把set中最小的值给下一个子区间没重叠的部分。 #include &l...

kuangle的博客 184

HDU 6301 Distinct Values(贪心)

题意 让你去构造一个长度为n的序列,之后给你一些区间,你构造的序列中这些区间没有重复的值,让你求这个序列的字典序最小 思路 按区间排序贪心。 用优先队列维护区间的mex,双指针扫过去就好。 代码 (%一发蔡队的代码) #include &lt;bits/stdc++.h&gt; using namespace std; typedef pair&lt;int,int&gt; PI...

wjmwsgj的博客 228

HDU 6301 Distinct Values

题目链接 http://acm.hdu.edu.cn/showproblem.php?pid=6301 多校contest1 题目大意是有一个长度为N的数组,给出M个"事实",每个事实指明一段区间内数字各异,求最后字典序最小的数组。 贪心+构造,给所有"事实"按 边界(左边界优先)排序,然后扫一遍"事实",用一个队列保证用以构造的所有数字最小且区间内各异。 1 #include ...

weixin_30600503的博客 96

HDU 6301 (贪心+set)

题意: 求一个长度为n的整数序列,使得给定的m个区间内没有相同的数字。 思路: 从前往后贪心填数字,用set维护一下当前区间可以填充的数字,每次填数字时填最小那个。注意序列中有些位置可能没有被任何区间覆盖。 代码: #include &lt;iostream&gt; #include &lt;iomanip&gt; #include &lt;algorithm&gt; #include &...

陋室 278

HDU 6301 (贪心+优先队列)

题目大意: 求一个长度为n的数列, 给出m个区间,这m个区间各自区间内的数不同 题解: 用优先队列来模拟过程 , 解题思路是想到了 , 可是不知道如何实现 , 果然还须继续努力呀 这道题思路是去掉重复的区间(取最大的区间,用sort+结构体加几个判断条件来实现),用优先队列维护1-n 中没有出现的数(比如给你一个10 3 [2 8] [1 5] [6 10] 的样例,把1 ...

weixin_30788619的博客 121

hdu6301(贪心+set)

求一个长度为n的数列, 给出m个区间,这m个区间各自区间内的数不同   当时比赛打完3题后稍微看了一下这题想了几分钟不是很容易就丢了。。比完想补这题想了一个垃圾做法复杂度有点高不敢写,于是面向标程编程了。。。大佬的做法真的清奇唉慢慢学吧   预处理一下用一个数组保存以这个点为起点的查询的最大的R的位置last[l] = max(last[l],r) (这里相当于去掉了完全包含在大区间里的小...

bpdwn2017的博客 1151
上一篇: CodeForces-450B-矩阵快速幂
下一篇: poj-2250-LCS+输出路径
alusang
博客等级 码龄10年 6粉丝 124原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值