P2757 导弹的召唤(数据加强)

传送门
LIS的O(nlgn)模板题。加强“导弹拦截”

#include <cstdio>
#include <cstring>
#include <algorithm>
#define INF 0x3f3f3f3f
using namespace std;
bool cmp(int x,int y) { return x>=y;}
int ulis(int *dp,const int *a,int n) {
    for(int i=0; i<n; ++i) dp[i]=-INF;
    for(int i=0; i<n; ++i) *upper_bound(dp,dp+n,a[i],cmp)=a[i];
    return lower_bound(dp,dp+n,-INF,cmp2)-dp;
}
int lis(int *dp,const int *a,int n) {
    for(int i=0; i<n; ++i) dp[i]=INF;
    for(int i=0; i<n; ++i) *lower_bound(dp,dp+n,a[i])=a[i];
    return lower_bound(dp,dp+n,INF)-dp;
}
int n,a[300001],tmp[300001];
int main() {
    while(~scanf("%d",&a[n])) n++;
    printf("%d\n%d\n",ulis(tmp,a,n),lis(tmp,a,n));
}
时间: 2024-10-31 18:19:08

P2757 导弹的召唤(数据加强)的相关文章

电力102规约报文解析

IEC102 应用报文分6大类:通讯连接,读时钟,读历史数据,读实时数据,读事件信息,对时. 传输过程的启动仅限于某一固定点,在规约中主站端为启动站,而电能计量数据终端设备位于计数站,始终为从动站.本系统中的1 级用户数据包括较早时段存储起来的电量和读-应用服务数据单元请求的全部信息.本系统中的数据采用低字节在前,高字节在后的传输方式. 102报文的基本格式: 帧长可以变化102报文的基本格式: 102报文的基本说明: a) 单字符用于子站向主站传输的确认(肯定或否定): b) 控制域是用来区别

继电保护装置规约104规约解析

101用于串口通调度,属于远动规约 104是101的网络版 103有串口的有以太网的,不是通调度的,是通保护装置的,属于继电保护规约 主站与子站通过IEC60870-5-104规约通讯协议说明 目录 目  录... 1 前  言... 1 一.IEC60870-5-104应用规约数据单元基本结构... 2 1.1 应用规约数据单元APDU.. 2 1.2 应用规约控制信息APCI2 1.3 应用服务数据单元ASDU.. 3 二.IEC60870-5-104规约的过程描述... 5 三.IEC60

导弹拦截

题目描述 某国为了防御敌国的导弹袭击,发展出一种导弹拦截系统.但是这种导弹拦截系统有一个缺陷:虽然它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能高于前一发的高度.某天,雷达捕捉到敌国的导弹来袭.由于该系统还在试用阶段,所以只有一套系统,因此有可能不能拦截所有的导弹. 输入导弹依次飞来的高度(雷达给出的高度数据是不大于30000的正整数),计算这套系统最多能拦截多少导弹,如果要拦截所有导弹最少要配备多少套这种导弹拦截系统. 输入输出格式 输入格式: 一行,若干个正整数最多100个. 输

nyoj 814 又见拦截导弹

又见拦截导弹 时间限制:3000 ms  |  内存限制:65535 KB 难度:3 描述 大家对拦截导弹那个题目应该比较熟悉了,我再叙述一下题意:某国为了防御敌国的导弹袭击,新研制出来一种导弹拦截系统.但是这种导弹拦截系统有一个缺陷:它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能超过前一发的高度.突然有一天,雷达捕捉到敌国的导弹来袭.由于该系统存在缺陷,所以如果想把所有的导弹都拦截下来,就要多准备几套这样的导弹拦截系统.但是由于该系统成本太高,所以为了降低成本,请你计算一下最少需要

codevs 1128 导弹拦截

题目描述 Description 经过11 年的韬光养晦,某国研发出了一种新的导弹拦截系统,凡是与它的距离不超过其工作半径的导弹都能够被它成功拦截.当工作半径为0 时,则能够拦截与它位置恰好相同的导弹.但该导弹拦截系统也存在这样的缺陷:每套系统每天只能设定一次工作半径.而当天的使用代价,就是所有系统工作半径的平方和.某天,雷达捕捉到敌国的导弹来袭.由于该系统尚处于试验阶段,所以只有两套系统投入工作.如果现在的要求是拦截所有的导弹,请计算这一天的最小使用代价. 数据范围对于10%的数据,N = 1

codevs 1044 拦截导弹 1999年NOIP全国联赛提高组

1044 拦截导弹 1999年NOIP全国联赛提高组 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 黄金 Gold 题解 题目描述 Description 某国为了防御敌国的导弹袭击,发展出一种导弹拦截系统.但是这种导弹拦截系统有一个缺陷:虽然它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能高于前一发的高度.某天,雷达捕捉到敌国的导弹来袭.由于该系统还在试用阶段,所以只有一套系统,因此有可能不能拦截所有的导弹. 输入描述 Input Description 输入导弹

codevs1409 拦截导弹2

[问题描述]一场战争正在 A 国与 B 国之间如火如荼的展开.B 国凭借其强大的经济实力开发出了无数的远程攻击导弹,B 国的领导人希望,通过这些导弹直接毁灭 A 国的指挥部,从而取得战斗的胜利!当然,A 国人民不会允许这样的事情发生,所以这个世界上还存在拦截导弹.现在,你是一名 A 国负责导弹拦截的高级助理.B 国的导弹有效的形成了三维立体打击,我们可以将这些导弹的位置抽象三维中间的点(大小忽略),为了简单起见,我们只考虑一个瞬时的状态,即他们静止的状态.拦截导弹设计非常精良,可以精准的引爆对方

NYOJ 79 拦截导弹

描述 某国为了防御敌国的导弹袭击,发展中一种导弹拦截系统.但是这种导弹拦截系统有一个缺陷:虽然它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能高于等于前一发的高度.某天,雷达捕捉到敌国导弹来袭.由于该系统还在试用阶段,所以只用一套系统,因此有可能不能拦截所有的导弹. 输入 第一行输入测试数据组数N(1<=N<=10)接下来一行输入这组测试数据共有多少个导弹m(1<=m<=20)接下来行输入导弹依次飞来的高度,所有高度值均是大于0的正整数. 输出 输出最多能拦截的导弹数目

[NOIP1999]拦截导弹 DP

题目描述题目链接 请点击 某国为了防御敌国的导弹袭击,发展出一种导弹拦截系统.但是这种导弹拦截系统有一个缺陷:虽然它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能高于前一发的高度.某天,雷达捕捉到敌国的导弹来袭.由于该系统还在试用阶段,所以只有一套系统,因此有可能不能拦截所有的导弹. 输入格式 输入数据为两行, 第一行为导弹的数目N(n<=1000) 第二行导弹依次飞来的高度,所有高度值均为不大于30000的正整数. 输出格式 1.输出只有一行是这套系统最多能拦截的导弹数和 2.要拦截