蓝桥冲刺31天之第七天
目录
A:三角回文数
B:数数
C:数组切分
D:倍数问题
一星陨落,黯淡不了星空灿烂;
一花凋零,荒芜不了整个春天。
如果命运是世界上最烂的编剧,
你就要争取做人生最好的演员。
即使生活在阴沟里,依然有仰望星空的权利。
A:三角回文数
因为题目以及给定1+2+...+363=66066,所以在遍历的时候可以从363开始,因为不知道这个数在多少出现,所以可以不定结果,那么循环代码如下:
for(int i=363;;i++)
接下来我们需要判定求和结果(1+i)*i/2>20220514,且该值为回文数,那么代码如下:
package 蓝桥冲刺31天A.第七天;import java.io.*;/*** @ClassName 三角回文数* @Description TODO* @Author 小怂很怂* @Date 2023/3/10 10:45* @Version 1.0**/
public class 三角回文数 {static BufferedReader br = new BufferedReader(new InputStreamReader(System.in));static StreamTokenizer st = new StreamTokenizer(br);static PrintWriter pw = new PrintWriter(new OutputStreamWriter(System.out));public static void main(String[] args) throws Exception {for(int i=363;;i++){int k=i*(i+1)/2;if (k>20220514&&pd(k)){pw.println(k);pw.flush();return;}}}public static boolean pd(int k){String ss=k+"";int j=ss.length()-1;for (int i=0;i<=j;i++){//判定是否是回文数if (ss.charAt(i)!=ss.charAt(j)) return false;j--;}return true;}public static int nextInt() throws Exception {//int型st.nextToken();return (int) st.nval;}public static long nextLong() throws Exception {//long型st.nextToken();return (long) st.nval;}
}
B:数数
通过遍历每一个数去求结果,建议电脑跑完后直接提交结果,会超时
package 蓝桥冲刺31天A.第七天;import java.io.*;/*** @ClassName 数数* @Description TODO* @Author 小怂很怂* @Date 2023/3/10 10:54* @Version 1.0**/
public class 数数 {static BufferedReader br = new BufferedReader(new InputStreamReader(System.in));static StreamTokenizer st = new StreamTokenizer(br);static PrintWriter pw = new PrintWriter(new OutputStreamWriter(System.out));public static void main(String[] args) throws Exception {int count=0;for (int i=2333333;i<=23333333;i++){//遍历int t=i,s=0;for (int j=2;j*j<=t;j++){//判定这个数分解情况if (t%j==0){t/=j;s++;j--;}}if (t!=1) s++;//t!=1的情况下,t一定为质数if (s==12) count++;//满足s=12,则计数}pw.println(count);pw.flush();//必须加}public static int nextInt() throws Exception {//int型st.nextToken();return (int) st.nval;}public static long nextLong() throws Exception {//long型st.nextToken();return (long) st.nval;}
}
C:数组切分
我们可以将每一个新放入的数产生后的连续区间看成一个整体:比如{3},{3,2},{1,3,2}这些都是一个整体,那么在计数的时候,就是去除这一个整体后,前面数的总和,例如:
或许有一点点绕,但是仔细想一下?
package 蓝桥冲刺31天A.第七天;import java.io.*;/*** @ClassName 数组切分* @Description TODO* @Author 小怂很怂* @Date 2023/3/10 11:48* @Version 1.0**/
public class 数组切分 {static BufferedReader br = new BufferedReader(new InputStreamReader(System.in));static StreamTokenizer st = new StreamTokenizer(br);static PrintWriter pw = new PrintWriter(new OutputStreamWriter(System.out));public static void main(String[] args) throws Exception {int n=nextInt();int []arr=new int[n+1];for (int i=1;i<=n;i++) arr[i]=nextInt();int []dp=new int[n+1];dp[0]=1;for (int i=1;i<=n;i++){int min=n+1;int max=0;for (int j=i;j>=1;j--){max=Math.max(max,arr[j]);min=Math.min(min,arr[j]);if (max-min==i-j) dp[i]=(dp[i]+dp[j-1])%1000000007;}}pw.println(dp[n]);pw.flush();//必须加}public static int nextInt() throws Exception {//int型st.nextToken();return (int) st.nval;}public static long nextLong() throws Exception {//long型st.nextToken();return (long) st.nval;}
}
D:倍数问题
看着像三数之和,那能不能像三数之和一样做?答案是可以的
我们先进行一次排序,因为优先大的数嘛,因为n<100000,所以如果采用O(n²)一定会超时,更何况还需要找第三个数,那么我们怎么做?题目给定了一个值K,且K<=1000,我们可以通过取模的方式,找到最多3*k个数,我们对于每一种模值只保留3个最大的数,然后遍历循环就成了O(3*k)³,这当然还是会超时的,如果我们在判定时直接结束某一次循环呢?因为数据是按照排序结果下来的,如果出现可选的最大的三个数<已经求得的最大值,我们是不是就可以不用再去进行计算了?因为再计算即使满足k的倍数,值也比最大值小
package 蓝桥冲刺31天A.第七天;import java.io.*;
import java.lang.reflect.Array;
import java.util.Arrays;/*** @ClassName 倍数问题* @Description TODO* @Author 小怂很怂* @Date 2023/3/10 11:21* @Version 1.0**/
public class 倍数问题 {static BufferedReader br = new BufferedReader(new InputStreamReader(System.in));static StreamTokenizer st = new StreamTokenizer(br);static PrintWriter pw = new PrintWriter(new OutputStreamWriter(System.out));public static void main(String[] args) throws Exception {int n=nextInt();int k=nextInt();int []arr=new int[n];int []brr=new int[k*3];//存放%k结果的最大的三个数int []crr=new int[k];//%k的数的个数,只需要三个for (int i=0;i<n;i++) arr[i]=nextInt();Arrays.sort(arr);int s=0;for (int i=n-1;i>=0;i--){//从中选出3*k个数if (crr[arr[i]%k]<=2){//判断该模值是否到达3crr[arr[i]%k]++;brr[s]=arr[i];//存入s++;}if (s==3*k)break;//选完3*k个数就可以直接跳出了,没必要多进行计算}int count=0;for (int i=0;i<s-2;i++){if (brr[i]*3<=count) break;//最大的情况比已知结果小,跳出for (int j=i+1;j<s-1;j++){if (brr[i]+brr[j]*2<=count) break;//最大的情况比已知结果小,跳出for (int l=j+1;l<s;l++){if ((brr[i]+brr[j]+brr[l])%k==0){count=Math.max(count,brr[i]+brr[j]+brr[l]);break;}if (brr[i]+brr[j]+brr[l]<=count) break;//最大的情况比已知结果小,跳出}}}pw.println(count);pw.flush();//必须加}public static int nextInt() throws Exception {//int型st.nextToken();return (int) st.nval;}public static long nextLong() throws Exception {//long型st.nextToken();return (long) st.nval;}
}
相关文章:

蓝桥冲刺31天之第七天
目录 A:三角回文数 B:数数 C:数组切分 D:倍数问题 一星陨落,黯淡不了星空灿烂; 一花凋零,荒芜不了整个春天。 如果命运是世界上最烂的编剧, 你就要争取做人生最好的演员。 即使生…...
【Python百日进阶-Web开发-Vue3】Day550 - Vue3 商城后台 10:Veux4-02基本使用
文章目录 二、Vuex的基本使用2.4 Mutations 应用 :同步更新state2.4.1 `src/store/index.js`2.4.2 `src/views/index.vue`2.5 Module的应用:分模块2.5.1 `src/store/modules/product.js`2.5.2 `src/store/modules/cart.js`2.5.3 `src/store/index.js`2.5.4 `src/views/index.…...

ESP32驱动-红外寻迹传感器驱动
红外寻迹传感器驱动 1、红外寻迹传感器介绍 红外寻迹传感器具有一对红外线发射管与接收管,发射管发射出一定频率的红外线,当检测方向遇到障碍物(反射面)时,红外线反射回来被接收管接收,经过比较器电路处理之后,输出接口会输出一个数字信号(低电平或高电平,取决于电路…...
【TS】TypeScript泛型 T 的用法详解
一、什么是泛型? 泛型,从字面上理解,泛型就是一般的,广泛的的意思。 TypeScript中泛型(Generics)是指在定义函数、接口或类的时候,不预先指定具体类型,而是在使用的时候再指定类型…...

Vue 3.0 单文件组件 【Vue3 从零开始】
#介绍 在很多 Vue 项目中,我们使用 app.component 来定义全局组件,紧接着用 app.mount(#app) 在每个页面内指定一个容器元素。 这种方式在很多中小规模的项目中运作的很好,在这些项目里 JavaScript 只被用来加强特定的视图。但当在更复杂的…...

北邮22信通:你是不是在looking for……那串代码?(2)第三章单链表
相信有了第二章顺序表的基础,小伙伴们学习第三章链表应该会轻松一点吧 目录 类模板下的单链表 1.1书上干净完整代码(无增改、适合自己动手实验) 1.2对书上代码的完善和对一些问题的验证和解释代码 1.补全一个函数: 2.this指…...

蓝库云|告诉你传统产业该如何进行数字化转型
在后疫情时代下,企业该如何在面临生存危机的情形下,投入「数字化转型」、提升公司竞争力,已成为许多公司的当务之急,但到底什么是数字化转型呢?传统产业又如何着手进行数位转型? 数字化转型是什么…...

121.(leaflet篇)leaflet结合echarts4迁徙图
听老人家说:多看美女会长寿 地图之家总目录(订阅之前建议先查看该博客) 文章末尾处提供保证可运行完整代码包,运行如有问题,可“私信”博主。 效果如下所示: 下面献上完整代码,代码重要位置会做相应解释 <!DOCTYPE html> <html>...

链表及其基本操作
1.单链表:1.1定义/性质:链表是线性表的链式存储方式。单链表通过指针线性遍历,删除/增加节点时间复杂度为O(1),访问节点时间复杂度为O(n)。单链表分为带头结点和不带头结点两种,带头结点是为了方便统一操作(…...

【Java基础 下】 031 -- 反射 动态代理
一、什么是反射? 换句话说就是(从类里拿出来) 可以获取到:(利用反射,我们可以获取到类中所有的东西) 获取是先从class字节码文件中获取的 二、获取class对象的三种方式 三种方式也对应了三种阶段…...

springcloud3 GateWay
一 GateWay 1.1 GateWay的作用 gateway相当于所有服务的门户,将客户端请求与服务端应用相分离,客户端请求通过gateway后由定义的路由和断言进行转发,路由代表需要转发请求的地址,断言相当于请求这些地址时所满足的条件ÿ…...

万字长文:Stable Diffusion 保姆级教程
万字长文:Stable Diffusion 保姆级教程 2022年绝对是人工智能爆发的元年,前有 stability.ai 开源 Stable Diffusion 模型,后有 Open AI 发布 ChatGPT,二者都是里程碑式的节点事件,其重要性不亚于当年苹果发布iPhone&a…...

WAMP搭建靶场
WAMP W:windows A:apache M:mysql,mariadb P:php 1. 下载phpstudy Windows版phpstudy下载 - 小皮面板(phpstudy) 2. 安装phpstudy 默认安装即可 3. 下载DVWA靶场 https://github.com/digininja/DVWA/archive/…...

Uipath Excel 自动化系列13-ForEachExcelSheet(遍历Sheet)
活动描述 ForEachExcelSheet(遍历Sheet):遍历Excel中的工作表,可以对 Excel 工作簿中的每个工作表重复一个或多个活动,该活动需与Use Excel File 活动选择的 Excel 文件一起使用。 使用场景:当处理包含多张工作表的 Excel 文件,…...

JDBC快速入门
🍎道阻且长,行则将至。🍓 目录 一、JDBC入门 1.概述 (1)JDBC本质 (2)JDBC好处 2.快速入门 (1)步骤 (2)实践 (3)两个小问题 一、JDBC入门 1.概述 JDBC就是使用Java语言操作关系型数据库的一套API,全称:( Java…...

蓝桥杯三月刷题 第六天
文章目录💥前言😉解题报告💥星期计算🤔一、思路:😎二、代码:💥考勤刷卡🤔一、思路:😎二、代码:💥卡片🤔一、思路:😎二、代…...

分享几个常用的运维 shell 脚本
今天咸鱼给大家分享几个不错的 Linux 运维脚本,这些脚本中大量使用了 Linux 的文本三剑客: awkgrepsed 建议大家这三个工具都要了解并最好能够较为熟练的使用 根据 PID 显示进程所有信息 根据用户输入的PID,过滤出该PID所有的信息 #! /b…...

分隔链表(精美图示详解哦)
全文目录引言分隔链表题目描述与思路实现总结引言 前面,我们熟悉了管理链表中的数据的方法,也了解了几道与链表相关的题目: 戳我看单链表详解哦 在本篇文章中,我们将再了解一道题目:分隔链表: 分隔链表OJ…...

腾讯乐固加固+app签名+多渠道打包
一、腾讯乐固-基础版免费加固-上传未加固的app-下载加固包(加固成功会清除原apk的签名信息和多渠道信息)https://console.cloud.tencent.com/ms/reinforce/list/basic二、使用AndroidStudio自带工具apksigner对apk重新签名找到apksigner.bat文件 路径D:\…...
Spring Boot整合Redis缓存(Lettuce)
spring-boot-demo-cache-redis 此 demo 主要演示了 Spring Boot 如何整合 redis,操作redis中的数据,并使用redis缓存数据。连接池使用 Lettuce。 Lettuce官网 pom.xml <!-- data-redis --> <dependency><groupId>org.springframework…...

基于FPGA的PID算法学习———实现PID比例控制算法
基于FPGA的PID算法学习 前言一、PID算法分析二、PID仿真分析1. PID代码2.PI代码3.P代码4.顶层5.测试文件6.仿真波形 总结 前言 学习内容:参考网站: PID算法控制 PID即:Proportional(比例)、Integral(积分&…...

基于uniapp+WebSocket实现聊天对话、消息监听、消息推送、聊天室等功能,多端兼容
基于 UniApp + WebSocket实现多端兼容的实时通讯系统,涵盖WebSocket连接建立、消息收发机制、多端兼容性配置、消息实时监听等功能,适配微信小程序、H5、Android、iOS等终端 目录 技术选型分析WebSocket协议优势UniApp跨平台特性WebSocket 基础实现连接管理消息收发连接…...

(二)TensorRT-LLM | 模型导出(v0.20.0rc3)
0. 概述 上一节 对安装和使用有个基本介绍。根据这个 issue 的描述,后续 TensorRT-LLM 团队可能更专注于更新和维护 pytorch backend。但 tensorrt backend 作为先前一直开发的工作,其中包含了大量可以学习的地方。本文主要看看它导出模型的部分&#x…...

MMaDA: Multimodal Large Diffusion Language Models
CODE : https://github.com/Gen-Verse/MMaDA Abstract 我们介绍了一种新型的多模态扩散基础模型MMaDA,它被设计用于在文本推理、多模态理解和文本到图像生成等不同领域实现卓越的性能。该方法的特点是三个关键创新:(i) MMaDA采用统一的扩散架构…...
Java求职者面试指南:Spring、Spring Boot、MyBatis框架与计算机基础问题解析
Java求职者面试指南:Spring、Spring Boot、MyBatis框架与计算机基础问题解析 一、第一轮提问(基础概念问题) 1. 请解释Spring框架的核心容器是什么?它在Spring中起到什么作用? Spring框架的核心容器是IoC容器&#…...

2025年渗透测试面试题总结-腾讯[实习]科恩实验室-安全工程师(题目+回答)
安全领域各种资源,学习文档,以及工具分享、前沿信息分享、POC、EXP分享。不定期分享各种好玩的项目及好用的工具,欢迎关注。 目录 腾讯[实习]科恩实验室-安全工程师 一、网络与协议 1. TCP三次握手 2. SYN扫描原理 3. HTTPS证书机制 二…...
MySQL 8.0 事务全面讲解
以下是一个结合两次回答的 MySQL 8.0 事务全面讲解,涵盖了事务的核心概念、操作示例、失败回滚、隔离级别、事务性 DDL 和 XA 事务等内容,并修正了查看隔离级别的命令。 MySQL 8.0 事务全面讲解 一、事务的核心概念(ACID) 事务是…...

Windows安装Miniconda
一、下载 https://www.anaconda.com/download/success 二、安装 三、配置镜像源 Anaconda/Miniconda pip 配置清华镜像源_anaconda配置清华源-CSDN博客 四、常用操作命令 Anaconda/Miniconda 基本操作命令_miniconda创建环境命令-CSDN博客...
NPOI操作EXCEL文件 ——CAD C# 二次开发
缺点:dll.版本容易加载错误。CAD加载插件时,没有加载所有类库。插件运行过程中用到某个类库,会从CAD的安装目录找,找不到就报错了。 【方案2】让CAD在加载过程中把类库加载到内存 【方案3】是发现缺少了哪个库,就用插件程序加载进…...

MyBatis中关于缓存的理解
MyBatis缓存 MyBatis系统当中默认定义两级缓存:一级缓存、二级缓存 默认情况下,只有一级缓存开启(sqlSession级别的缓存)二级缓存需要手动开启配置,需要局域namespace级别的缓存 一级缓存(本地缓存&#…...