当前位置: 首页 > news >正文

LIS+找规律,CF 582B - Once Again...

一、题目

1、题目描述

2、输入输出

2.1输入

2.2输出

3、原题链接

582B - Once Again...


二、解题报告

1、思路分析

考虑朴素做法对T *n的数组求LIS

但是T * n可达1e9

思考一下,最优解无非就是几个循环节拼接,我们最差情况下对sqrt(T)个a[]求LIS即可

事实上,我们最多对n个a求LIS就能得到正确解

当然,即使对sqrt(T)个a求LIS也不会超时

2、复杂度

时间复杂度: O()空间复杂度:

3、代码详解

 ​
import sys
from bisect import bisect_left
from bisect import bisect_rightinput = lambda: sys.stdin.readline().strip()
MII = lambda: map(int, input().split())
LMI = lambda: list(map(int, input().split()))
P = 998244353def solve():n, T = MII()a = LMI()res = 0lis = []delta = 0for _ in range(n):delta = len(lis)for x in a:idx = bisect_right(lis, x)if idx < len(lis):lis[idx] = xelse:lis.append(x)delta = len(lis) - deltaT -= 1if not T:breakprint(len(lis) + delta * T)if __name__ == "__main__":solve()

http://www.lryc.cn/news/398070.html

相关文章:

  • 数据赋能(145)——开发:数据拆分——实施过程、应用特点
  • 【漏洞复现】Splunk Enterprise for Windows 任意文件读取漏洞 CVE-2024-36991
  • FastAPI -- 第一弹
  • C++入门基础篇(1)
  • 基于html开发的在线网址导航在线工具箱源码
  • 【密码学】大整数分解问题和离散对数问题
  • 解析 pdfminer layout.py LAParams类及其应用实例
  • Redis官方可视化管理工具
  • android 固定图片大小
  • 操作系统——内存管理(面试准备)
  • vue3实现vuedraggable实现拖拽到垃圾桶图标位置进行删除
  • MySQL向自增列插入0失败问题
  • Python:Python基础知识(注释、命名、数据类型、运算符)
  • Protobuf: 大数据开发中的高效数据传输利器
  • MySQL 面试相关问题
  • java org.aeonbits.owner库介绍
  • YOLOv10改进 | 添加注意力机制篇 | 添加LSKAttention大核注意力机制助力极限涨点
  • 学习笔记——动态路由——IS-IS中间系统到中间系统(特性之路由撤销)
  • 智能无人机控制:STM32微控制器与机器学习集成(内附资料)
  • 力扣 454四数相加
  • Java面试题系列 - 第9天
  • 数据结构【顺序表】
  • 【JavaScript 报错】未捕获的类型错误:Uncaught TypeError
  • html+css+js随机验证码
  • WPS打开PDF文件的目录
  • 常见 Web漏洞分析与防范研究
  • 暗黑魅力:Xcode全面拥抱应用暗黑模式开发指南
  • 【游戏引擎之路】登神长阶(七)——x86汇编学习:凡做难事,必有所得
  • 在 Windows 平台搭建 MQTT 服务
  • jdevelope安装