首页 > 其他分享 >P1020 [NOIP1999 提高组] 导弹拦截

P1020 [NOIP1999 提高组] 导弹拦截

时间:2024-09-13 15:52:00浏览次数:9  
标签:cout int mid len P1020 long NOIP1999 拦截

#include <bits/stdc++.h>
using namespace std;

#define int long long
const int N = 1e5 + 10;

int n;
int a[N];
int q[N];

signed main() {
	
	ios :: sync_with_stdio(0);
	cin.tie(0);
	cout.tie(0);
	
	int x;
	while(cin >> x) a[++n] = x;

	int len = 0;
	q[0] = 2e9;   //满足单调递减

	//对于每一个元素,有两种选择
	for(int i = 1; i <= n; i ++) {
		//1.当前元素满足单调性
		if(a[i] <= q[len]) q[++len] = a[i];
		//2.当前元素不满足单调性
		else {
			int l = 1, r = len;
			while(l < r) {
				int mid = l + r >> 1;
				if(q[mid] < a[i]) r =mid;
				else l =mid + 1;
			}
			q[l] = a[i];  //找第一个小于等于他的元素,进行覆盖
		}
	}
	cout << len << endl;   //求最大不升子序列

	len = 0;
	q[0] = -2e9;  //满足单调递增

	//对于每一个元素有两种选择
	for(int i = 1; i <= n; i++) {
		//1.如果当前元素大于其他系统的结尾高度
		if(a[i] > q[len])  q[++len] = a[i];  //分配到新的系统

		else {
			int l = 1, r = len;
			while(l < r) {
				int mid = l + r >> 1;
				if(a[i] <= q[mid]) r = mid;
				else l = mid + 1;
			}
			q[l] = a[i];
		}
	}
	cout << len << endl;
	return 0;
}

标签:cout,int,mid,len,P1020,long,NOIP1999,拦截
From: https://www.cnblogs.com/ltphy-/p/18412338

相关文章

  • 用 Rust 实现敏感信息拦截插件,提升 AI 网关安全防护能力
    作者:刘毅杰,棱镜七彩信息科技有限公司研发,HigressMember前言AI时代内容安全的重要性随着大模型技术的发展,企业越来越依赖这些模型来进行业务处理。然而,数据安全成为了不容忽视的问题。主要有两方面的隐患:AI生成内容的不可控性:LLM的回答可能产生涉黄、涉暴等内容,为业务和......
  • axios使用 && axios拦截器
    1.安装npminstallaxios2.使用_axios.post("/api/auth/",form.value).then((res)=>{if(res.data.code===0){//{id:1,name:username.value,token:"xxx88sdkweisdfsd"}store.doLogin(res.data.data)ro......
  • Android 使用拦截器结合协程实现无感知的 Token 预刷新方案
    背景在应用中,我们通常使用Token作为用户认证的凭证。为了安全起见,Token一般设置较短的有效期,并通过refreshToken进行续期。传统的做法是当服务端返回Token过期的响应(如401)时,再进行刷新,但这种方式可能导致用户体验不佳(如突然的登录状态丢失、请求失败等)。网上关于A......
  • 【Java】Spring-AOP与拦截器实战 (上手图解)
    Java系列文章目录补充内容Windows通过SSH连接Linux第一章Linux基本命令的学习与Linux历史文章目录Java系列文章目录一、前言二、学习内容:三、问题描述四、解决方案:4.1认识依赖4.2使用AOP与拦截器4.2.1使用AOP4.2.1.1设置DemoAop类4.2.2.2设置切面4.2.2.3设......
  • 安卓13拦截home功能 监听home键 禁用home键
    总纲android13rom开发总纲说明目录1.前言2.问题分析3.代码分析4.代码修改5.编译6.彩蛋1.前言  经常遇到客户监听某个按键的需求,其实有些功能APP本身就可以处理的,......
  • Springmvc中的处理器、拦截器、过滤器的执行时机
    Springmvc中的处理器、拦截器、过滤器的执行时机测试案例:publicclassMyFilterimplementsFilter{@Overridepublicvoidinit(FilterConfigfilterConfig)throwsServletException{System.out.println("--->>MyFilter.init");}@Override......
  • 过滤器与拦截器对比
    在JavaWeb开发中,过滤器(Filter)和拦截器(Interceptor)都是用于处理请求和响应的机制,但它们在使用场景、实现方式和功能上有一些重要的区别。 过滤器(Filter)特点:工作原理:过滤器是在请求到达Servlet之前或响应离开Servlet之后进行处理的。过滤器可以对请求和响应进行修改。配......
  • MyBatis源码(6)拦截器
    1、目标本文的主要目标是学习MyBatis拦截器的源码,本文将以插入操作为例debug拦截器相关的源码2、拦截器源码分析调用mapper接口的insert插入记录方法,会调用SqlSession对象的insert方法SqlSession执行insert方法Spring容器会创建SqlSessionTemplate对象,为了实现插入操......
  • C# 上传文件被D盾防火墙拦截
    服务器装了D盾。部署了上传文件的接口。用PostMan工具调用可以正常调用。用C#调用提示403被拦截。于是只能用Fiddler进行抓包比较两个请求的差距PostMan的请求 C#的请求找到问题点就是引号有问题。进行处理跟PostMan一致即可完成文件上传1.封装方法///<summary>......
  • sql拦截器
    好用的sql拦截器​ 写项目的时候遇到了好用的sql拦截器,自记录,整体结构如下:importcom.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor;importorg.springframework.context.annotation.Bean;importorg.springframework.context.annotation.Configuration;......