【贪心】LIS @The 15th Zhejiang Provincial Collegiate Programming Contest E

用于asp.net的进度条的ntarDev ProgressBar控件源码及例子 ntarDev ProgressBar是用于asp.net的进度条,在日常asp.net开发过程中,经常会遇到需要一个进度条来表示实时进度的情况,比如一个较长时 间的后台任务。 立即下载

传送门

题意要你构造一个序列,使得该序列的每个位置上的最长上升子序列的长度能构成给定的序列。
构造序列的元素要求还要求满足给定的上下界

solution
我们可以把给出的最长上升子序列的长度按升序排列,长度相同的按下标降序排列。
排完序后第一个数可以贪心的取其下界,同一层(即长度相同)的下标小的取值应该大于等于下标较大的取值
同时取值应该大于前一层下标最大且小于该位置的数

#define IN_LB() freopen("F:\\in.txt","r",stdin)
#define IN_PC() freopen("C:\\Users\\hz\\Desktop\\in.txt","r",stdin)
#include <bits/stdc++.h>

using namespace std;
const int maxn = 100005;

struct node {
    int ind,ceil,d,u;
    int ans;
} nd[maxn];

bool cmp(node a,node b) {
    if(a.ceil==b.ceil)return a.ind>b.ind;
    return a.ceil<b.ceil;
}

bool cmp1(node a,node b) {
    return a.ind<b.ind;
}

struct qnode{
    int yuanind,xianind,ceil;
};

queue <qnode> que;

int main() {
//    IN_LB();
    int T;
    scanf("%d",&T);
    while(T--) {
        int n;
        scanf("%d",&n);
        for(int i=0; i<n; i++) {
            nd[i].ind = i;
            scanf("%d",&nd[i].ceil);
        }
        for(int i=0; i<n; i++) {
            scanf("%d%d",&nd[i].d,&nd[i].u);
        }
        sort(nd,nd+n,cmp);
        nd[0].ans = nd[0].d;
        qnode seed;
        seed.yuanind = nd[0].ind;
        seed.xianind = 0;
        seed.ceil = 1;
        while(!que.empty())que.pop();
        que.push(seed);
        for(int i=1; i<n; i++) {
            if(nd[i].ceil==nd[i-1].ceil) {
                if(nd[i].ceil>1){
                    int exind;
                    while(!que.empty()) {
                        if(que.front().yuanind<nd[i].ind) {
                            exind = que.front().xianind;
                            break;
                        }
                        que.pop();
                    }
                    nd[i].ans = max(max(nd[exind].ans+1,nd[i-1].ans),nd[i].d);
                }
                else nd[i].ans = max(nd[i-1].ans,nd[i].d);
                qnode cur;
                cur.yuanind = nd[i].ind;
                cur.xianind = i;
                cur.ceil = nd[i].ceil;
                que.push(cur);
            } else {
                int exind;
                while(!que.empty()) {
                    if(que.front().ceil==nd[i].ceil-1&&que.front().yuanind<nd[i].ind) {
                        exind = que.front().xianind;
                        break;
                    }
                    que.pop();
                }
                nd[i].ans = max(nd[exind].ans+1,nd[i].d);
                qnode cur;
                cur.yuanind = nd[i].ind;
                cur.xianind = i;
                cur.ceil = nd[i].ceil;
                que.push(cur);
            }
        }
        sort(nd,nd+n,cmp1);
        for(int i=0; i<n; i++) {
            printf("%d%s",nd[i].ans,(i==n-1)?"\n":" ");
        }
    }
    return 0;
}
ESP-01S获取网络时间踩坑全记录:AT指令调试、JSON解析乱码、时区处理,一个都不能少 本文详细记录了使用ESP-01S WIFI模块获取网络时间的完整过程,包括AT指令调试、JSON解析乱码处理以及时区转换等关键步骤。通过实战案例和代码示例,帮助开发者避开常见陷阱,实现稳定的网络时间同步功能。 阅读详情

相关推荐

基于STM32F103与AD8232的便携式心电监测系统设计与实现

本文详细介绍基于STM32F103微控制器与AD8232心电传感器模块的便携式心电监测系统设计与实现。系统通过ADC采集心电信号,结合软件滤波算法处理基线漂移和工频干扰,并利用OLED屏幕实时显示波形,具有低成本、高实用性的特点,适用于健康监测与嵌入式学习。

m5n6o7的博客 737

The 10th Shandong Provincial Collegiate Programming Contest

目录 Contest Info Solutions A. Calandar B. Flipping Game C. Wandering Robot D. Game on a Graph E. BaoBao Loves Reading ...

banshen0201的博客 739

Cyclone MAX独立编程实战:从硬件接口到SAP镜像的嵌入式烧录指南

在嵌入式系统开发与量产中,固件烧录是连接软件与硬件的关键环节。其核心原理是通过特定的调试接口(如JTAG、BDM)和编程算法,将编译后的机器码写入目标处理器的非易失性存储器。这项技术的价值在于确保软件在硬件上的可靠部署,是产品功能实现和质量保证的基础,广泛应用于汽车电子、工业控制等对一致性与可靠性要求极高的领域。独立编程器(Stand-Alone Programmer)在此基础上,通过集成存储、交互界面和任务逻辑,实现了脱离PC的自动化操作,极大提升了产线效率和现场维护的便捷性。本文以Cyclone MAX

weixin_34038293的博客 466

The 15th Heilongjiang Provincial Collegiate Programming Contest--队内训练

题目 A B C D E F G H I J K L Solved ♠\spadesuit♠ ⊘\oslash⊘ ♠\spadesuit♠ ♠\spadesuit♠ ∙\bullet∙ ♠\spadesuit♠ ∙\bullet∙ ♠\spadesuit♠ ♠\spadesuit♠比赛时通过;∙\bullet∙:赛后通过;⊘\oslash⊘ :比赛时尝试了未通过;∘\circ∘:比赛时未尝试 A. August 开场签到题,题意就是求题目中的图形面积,一眼看下去,直觉爱心的下...

bloom_er的博客 901

基于wxWidgets框架,使用DialogBlocks建立OpenGL界面

前言 之前公司要求使用wxWidgets做GUI,基于OpenGL图形内核,开发三维可视化工具。目前初步开发工作基本已经完成,剩下都是完善了。这里记录一下最开始的框架搭建过程(当然是简化版啦)。wxWidgets结合OpenGL开发可以实现跨平台应用,再结合CMake和VS Code,整体开发工具用习惯了会感觉非常顺手。 界面编辑 首先,使用DialogBlocks新建一个工程,这里工程目录...

cyberobot的博客 2748

基于单片机控制双向可控硅灯光强度设计

*单片机设计介绍,基于单片机控制双向可控硅灯光强度设计。

QQ2193276455的博客 2456

The 15th Heilongjiang Provincial Collegiate Programming Contest (A、G、H、L)

The 15th Heilongjiang Provincial Collegiate Programming ContestA. AugustG. GoodbyeL. Let's Get Married 链接:https://codeforces.com/gym/102803 A. August #include <bits/stdc++.h> #define ll long long using namespace std; const int maxn=1e5+5; const doubl

cheng__yu_的博客 1166

将Windbg附加到软件进程上排查异常闪退的问题

使用Windbg和Process Explorer排查因为内存泄漏导致的软件异常闪退问题。

dvlinker的技术专栏 1万+

The 15th Heilongjiang Provincial Collegiate Programming Contest(A,C,F,G,H,L)

比赛链接 2021/2/7训练赛 Problem.A August 题解 不难发现上半部分是个半径为aaa的圆,下半部分利用割补小正方形的方法得出等价于一个长为2a2a2a,宽为2b2b2b的长方形。 比赛时没有发现,不过队友看出下半部分面积应该是个关于aaa和bbb的表达式,并且很好算,用答案减去圆的面积反推出面积为4ab4ab4ab。 代码 #include <bits/stdc++.h> #define PI atan(1.0)*4 #define rp(i,s,t) for (regi

mumei的博客 1140

【Flink on k8s】- 1 - Flink Kubernetes Operator 简介 2023

Flink Kubernetes Operator 可以与 Kubernetes 的其他功能和工具集成,可以帮助用户快速定位和解决问题。Flink Kubernetes Operator可以在Kubernetes上实现高可用性,以确保 Flink 集群的稳定性和可靠性。Flink Kubernetes Operator 可以快速地部署 Flink 集群,而无需手动配置和管理集群。Flink Kubernetes Operator可以将Flink集群与其他应用程序隔离,以避免资源争用和干扰。

欢迎来到我的博客,一起探索代码里的世界! 1344

从win系统远程使用服务器中的nsight system、nsight compute

本文介绍了如何在Windows系统中远程使用服务器上的Nsight System和Nsight Compute工具。主要内容包括:1)双系统同步安装相同版本的Nsight工具,配置环境变量;2)命令行生成profile文件或直接运行分析;3)Windows远程连接服务器的配置方法;4)解决权限问题的具体方案,如修改文件夹权限或调整NVIDIA驱动配置。文章提供了详细的安装步骤和常见问题解决方案,适用于需要进行GPU性能分析和调试的开发人员。

Justinyh的博客 401

The 10th Shandong Provincial Collegiate Programming Contest 2019山东省赛游记+解题报告

比赛结束了几天...这篇博客其实比完就想写了...但是想等补完可做题顺便po上题解... 5.10晚的动车到了济南,没带外套有点凉。酒店还不错。 5.11早上去报道,济南大学好大啊...感觉走了一个世纪才到了他们的教学楼...跟我们学校比起来... 中午吃的他们的八食堂,对于我来说并没有吃饱,食堂看着很好但是给队员的窗口只有一个。其他的都没办法吃。 下午热身赛AB水题。C题刚开始觉得...

weixin_33881753的博客 318

Unreal Engine开发:角色动画与状态机_动画混合:通过混合节点实现平滑动画过渡

动画混合是提升游戏动画质量的关键技术之一。Unreal Engine提供了多种混合节点,包括BlendSpace1D、Blend Two By Bool、Blend Two By Alpha和Sequencer,每种节点适用于不同的场景。通过合理使用这些节点,可以实现平滑、自然且高效的动画过渡效果。此外,遵循最佳实践和高级应用技巧,可以进一步优化动画质量和性能。希望本节内容对你在Unreal Engine中实现动画混合有所帮助,使你的游戏角色动作更加流畅和自然。

chenlz2007的博客 1245

The 15th Heilongjiang Provincial Collegiate Programming Contest题解 gym102803

The 15th Heilongjiang Provincial Collegiate Programming Contest题解 gym102803

qq_38530379的博客 1078

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

Back In Time 2.0.0 RC1:基于快照的Linux备份方案实战指南

时间点备份(Snapshot Backup)是一种通过创建数据在特定时刻完整状态副本的技术,其核心原理通常结合rsync进行高效增量同步与硬链接技术实现存储优化。这项技术的核心价值在于为文件系统提供可回溯的历史版本管理,在误删、配置错误或数据损坏时实现精准恢复。在应用场景上,它尤其适合需要持续保护且可能频繁变更的配置、代码及文档数据。本文聚焦于Back In Time这款开源工具,它正是基于rsync与硬链接技术构建的轻量级解决方案,其2.0.0 RC1版本带来了重要的Python 3迁移与功能更新。通过配

weixin_30376509的博客 461

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

The 10th Zhejiang Provincial Collegiate Programming Contest

题目连接:http://acm.zju.edu.cn/onlinejudge/showContestProblems.do?contestId=347 套题是真TM酸爽。193∗47∗887∗29193*47*887*29 A Applications英语题 特别复杂的模拟 注意细节 细节 细节 细节 细节 。。。。B Break Standard Weight签到题 直接暴力就好了C

Tabris的博客 486

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

Happy Equation

Source:The 10th Shandong Provincial Collegiate Programming Contest 题解: 因为2^p为偶数,所以a,x的奇偶性相同 1.当a为奇数时,答案始终为1 2.下面讨论a为偶数的情况 因为a为偶数,所以a=2*other,a^x=2^x*other^x; 当x>=p时,a^x%2^p==0,此时只需要关心x^a%2^p...

weixin_30835933的博客 250

浙江大学计算机等级考试题库,ZOJ :: Home

2021.07.09Application for 2021 Huawei-ZJU ICPC Team Elite ScholarshipClick here to see details (in Chinese).2020.06.09Announcement of 2019-2020 Huawei-ZJU ICPC Team Elite Scholarship RecipientsClick h...

weixin_42534100的博客 957

2021 Shandong Provincial Collegiate Programming Contest 个人训练题解

题目链接 目录 B Build Roads 题意 给定n(1≤n≤2⋅105)n(1\leq n\leq2\cdot10^5)n(1≤n≤2⋅105)个点的完全图,每个点有一个权值为ai(1≤ai≤2⋅105)a_i(1\leq a_i\leq2\cdot10^5)ai​(1≤ai​≤2⋅105),两个点iii和jjj之间的边权为gcd(ai,aj)gcd(a_i,a_j)gcd(ai​,aj​)。题目给定点权aia_iai​随机生成的程序、范围以及随机种子,要求该图的最小生成树。 题解 首先如果点权范围L

m0_46527476的博客 1610

Gym The 15th Heilongjiang Provincial Collegiate Programming Contest B. Bills of Paradise(权值线段树+区间操作)

const int N=1e6+5; int n,m,_; int i,j,k; //int a[N]; unsigned long long k1, k2; unsigned long long xorShift128Plus() { unsigned long long k3 = k1, k4 = k2; k1 = k4; k3 ^= k3 << 23; k2 = k3 ^ k4 ^ (k3 >> ...

C_Dreamy的博客 644

The 15th Zhejiang Provincial Collegiate Programming Contest 题解

A题题目链接题意:给一个数组请问这个数组是否符合先升序后降序,是输出Yes否则输出No。思路:直接遍历数组判断C++代码:#include&lt;bits/stdc++.h&gt; using namespace std; const int maxn = 100010; int n,a[maxn]; int main() { int T; scanf ( "%d" , &amp;T ...

maze_illusion的博客 488

The 15th Zhejiang Provincial Collegiate Programming Contest Sponsored by TuSimple - L

题目很长,题意很简单:计算出H,对preference排序,取前m个输出即可。注意数据类型,被卡了一下。#include&lt;cstdio&gt; #include&lt;iostream&gt; #include&lt;algorithm&gt; #include&lt;string&gt; using namespace std; string str1,str2; struct node ...

077CYW的博客 344

The 15th Zhejiang Provincial Collegiate Programming Contest Sponsored L Doki Doki Literat(结构体排序)

Doki Doki Literature ClubTime Limit: 1 Second      Memory Limit: 65536 KBDoki Doki Literature Club! is a visual novel developed by Team Salvato. The protagonist is invited by his childhood friend, Say...

UncleJokerly 539

The 15th Zhejiang Provincial Collegiate Programming Contest(部分题解)

ZOJ 4024 Peak 题意 给出n和n个数,判断该数列是否是凸形的。 解题思路 从前往后第一对逆序数,和从后往前第一队逆序数,如果都非零而且相邻,证明该数组是凸形的。 代码 1 #include <cstdio> 2 const int maxn = 100000 + 10; 3 int a[maxn]; 4 5 int main()...

aisebu7819的博客 382

Peak

153 - The 15th Zhejiang Provincial Collegiate Programming Contest Sponsored by TuSimple - APeak题目链接:http://acm.zju.edu.cn/onlinejudge/showContestProblem.do?problemId=5752解题思路:这道题目题意不难理解,但是自己却读题之后又多想了一...

Lucky_-的博客 1031

The 15th Zhejiang Provincial Collegiate Programming Contest SponsoredJ CONTINUE...?(手动翻译)(模拟&细节处理)

CONTINUE...?Time Limit: 1 Second      Memory Limit: 65536 KB      Special JudgeDreamGrid has  classmates numbered from  to . Some of them are boys and the others are girls. Each classmate has some gem...

UncleJokerly 859
上一篇: 【map离散&容斥】Ghosts @Codeforces Round #478 (Div. 2) D
下一篇: 【树形dp入门】没有上司的舞会 @洛谷P1352
乌拉尔银狼
博客等级 码龄10年 9粉丝 35原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值