笔试。牛客.C-消减整数力扣.最长上升子序列(dp)牛客.最长上升子序列(二) (贪心+二分)牛客.爱吃素

目录

牛客.C-消减整数

力扣.最长上升子序列(dp)

牛客.最长上升子序列(二) (贪心+二分)

牛客.爱吃素


牛客.C-消减整数

开始的时候我还以为是什么,结果数学才是根本

import java.util.*;
public class Main{public static void main(String[]args){Scanner in=new Scanner(System.in);int n=in.nextInt();int[]a=new int[n];for(int i=0;i<n;i++){a[i]=in.nextInt();int count=0;int p=1;while(a[i]!=0){a[i]-=p;count++;if(a[i]%(2*p)==0){p=p*2;}}System.out.println(count);}}
}

力扣.最长上升子序列(dp)

经验+题目要求:

以i位置元素为结尾的所有子序列中,最长的递增子序列的长度

可以分成哪些类呢?

单独自己玩,长度为1.

情况二:    长度大于1 ,设j为i前面的数字, 0<=j<=i-1

...i-1 i   不管你前面什么样子,我的i跟着你的i-1后面

...i-2 ,i i跟着前面i-2的后面,...

0,i

注意这里面的j并非一定要化成二维数组,而是可以用来单纯的遍历数组中比i中点更小的数

nums[j]<nums[i] ->前提

class Solution {public int lengthOfLIS(int[] nums) {int n=nums.length;int []dp=new int[n];Arrays.fill(dp,1);//dp[i][j]:以i位置为结尾的子序列中,最长递增子序列的长度int max=0;for(int i=0;i<n;i++){for(int j=0;j<i;j++){if(nums[j]<nums[i]){dp[i]=Math.max(dp[j]+1,dp[i]);}}max=Math.max(max,dp[i]);}return max;}
}

牛客.最长上升子序列(二) (贪心+二分)

LIS最长上升子序列的

1.动态规划

2.贪心+二分(n*1ogn)

在保存序列的时候,只需要存最后一个元素就行了。

import java.util.*;public class Solution {/*** 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可** 给定数组的最长严格上升子序列的长度。* @param arr int整型一维数组 给定的数组* @return int整型*/public int LIS (int[] a) {int n=a.length;int[]dp=new int[n+1];int pos=0; //相当于指向存到哪个位置了,pos的含义是来说,这个位置是在第几个位次中//每一个数字都相当于插入到这个数组中,来看看在什么位置for(int x:a){if(pos==0||x>dp[pos]){//这句话的意思,假如第一次来,那么我们需要先++pos意思就是存到第一个位置了,然后把x放进去。此时还有一种情况,假如x特别大,大于最后一个的时候,直接新开一个dp[++pos]=x;}else{//二分快速查找插入位置 ,比如说新来了一个数字7,会把这个7放到一个较小的数字,和较大的数字中间,进而会把大的覆盖掉,这个序列是一个单调递增的序列。既然是单调递增就是有序的序列,我们要二分出插入的位置,我们要找大于等于阶段点,假如[1,3,7,5} 3(又来一个三,他会覆盖掉原先有的3)]int l=1,r=pos;while(l<r){int mid=(r+l)/2;if(dp[mid]>=x){r=mid;}else{l=mid+1;}}
//将获取到的那个位置,也就是恰好大于等于上一个多最小的覆盖原先的那个位置dp[l]=x;}}return pos;}}

牛客.爱吃素

这里可以看到,我这只通过了70,剩下的我感觉是数字太大,但是我又不知道该如何处理,所以我去看题解,发现这里还有数学的功劳

如果a>1,b>1的情况下,一个数有两个因子,他一定不是素数

假如一个数是素数,他的因子只有1和本身

所以a==1或者b==1

import java.util.Scanner;// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {public static boolean issu(long x){if(x==1){return false;}else if(x==2){return true;}else{for(int i=2;i<=Math.sqrt(x);i++){if(x%i==0){return false;}}}return true;}public static void main(String[] args) {Scanner in = new Scanner(System.in);// 注意 hasNext 和 hasNextLine 的区别int T=in.nextInt();long [][]ab =new long[T][2] ;for(int i=0;i<T;i++){ab[i][0]=in.nextLong();ab[i][1]=in.nextLong();if(ab[i][0]==1&&issu(ab[i][1])==true||ab[i][1]==1&&issu(ab[i][0])==true){System.out.println("YES") ;}else{System.out.println("NO");}}}
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/419804.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux网络编程2——多进程编程

一.进程 1.概念复习 程序&#xff1a;程序(program)是存放在磁盘文件中的可执行文件 进程&#xff1a;程序的执行实例被称为进程(process)。 进程具有独立的权限与职责。如果系统中某个进程崩溃&#xff0c;它不会影响到其余的进程。每个进程运行在其各自的虚拟地址空间中&a…

Docker打包镜像

Docker打包镜像 前置工作 1.虚拟机中配置好docker环境&#xff0c;并导入nginx&#xff0c;mysql&#xff0c;jdk的镜像 2.下载docker for windows 用idea打包镜像和创建容器需要这个东西支持 下载安装包后执行&#xff0c;无脑回车即可 3.idea中配置docker连接 完成配置后&…

WPS Office for Linux 12 个人版上线deepin 23商店:UI 视觉重构,新增多项 AI 功能

查看原文 全新WPS Office For Linux个人版&#xff08;12.1.0.17881&#xff09;与deepin 23的AI功能深度融合&#xff0c;正式上架在社区商店啦&#xff01; 这是 Linux 版本的一次里程碑式的重大更新。在产品能力层面上&#xff0c;在 deepin 23 上WPS Office 几乎实现了与 …

AMD MI300X vs Nvidia H100/H200:AI计算领域的新一轮较量

随着人工智能&#xff08;AI&#xff09;技术的飞速发展&#xff0c;计算引擎的性能竞赛也愈演愈烈。近期&#xff0c;MLCommons发布的最新AI训练和推理基准测试结果&#xff0c;他们构建了一套 MLPerf AI 训练和推理基准&#xff0c;将AMD的Instinct“Antares”MI300X GPU与Nv…

软件开发人员从0到1实现物联网项目:项目架构的思考

文章目录 前言单体应用足矣摒弃传统的微信对接后期的维护投入上真正的“云”&#xff1a;云托管0服务器免运维免费的CDN和DDoS防护 技术架构小结 前言 因为种种原因&#xff0c;《软件开发人员从0到1实现物联网项目》这个项目的进度停滞了将近一个月。 鉴于该项目的前期开发和…

【hot100篇-python刷题记录】【跳跃游戏 II】

R7-贪心算法 目录 方法1&#xff1a; 方法2&#xff1a; 很贪心啊&#xff0c;局部最优解就是全局最优解&#xff0c;要求到达nums[n-1]的最小步数&#xff0c;我们每一步都走最远。 方法1&#xff1a; class Solution:def jump(self, nums: List[int]) -> int:nlen(n…

【车载开发系列】ParaSoft入门介绍

【车载开发系列】ParaSoft入门介绍 【车载开发系列】ParaSoft入门介绍 【车载开发系列】ParaSoft入门介绍一. ParaSoft的背景二. 设计理念三. ParaSoft C/CTest简介四. 具备常用功能1&#xff09;静态代码分析2&#xff09;代码覆盖率分析3&#xff09;模糊测试4&#xff09;自…

AI边缘控制器:重塑工业自动化与控制的新篇章

在智能制造和工业4.0的浪潮下&#xff0c;AI边缘控制器作为新一代智能控制设备&#xff0c;正逐步成为推动工业自动化与数字化转型的关键力量。这类基于x86架构的高性能IPC&#xff08;工业个人计算机&#xff09;形态产品&#xff0c;不仅继承了传统PC的可扩展性、开放性和可视…

RPKI应急管控网络拓扑搭建

应急管控网络拓扑搭建 一、网络拓扑图 二、拓扑配置 1.资源库批量导入roas 在rpki.qcl.edu.cn服务器上的/usr/local/rpki/目录下执行脚本 sh roa_get.sh add#!/bin/dash# TODO Aadd Rremove start10000 sum254 run(){for i in seq 1 20dofor j in seq 1 250doas_numberexpr…

深度学习中常见的损失函数

关注B站可以观看更多实战教学视频&#xff1a;hallo128的个人空间 深度学习中常见的损失函数 损失函数的作用 损失函数是衡量神经网络输出与真实标签之间差距的指标。在训练过程中&#xff0c;神经网络的目标是最小化损失函数的值。常见的损失函数包括均方误差&#xff08;MS…

弗洛伊德(Floyd)算法(C/C++)

弗洛伊德算法&#xff08;Floyds algorithm&#xff09;&#xff0c;又称为弗洛伊德-沃尔什算法&#xff08;Floyd-Warshall algorithm&#xff09;&#xff0c;是一种用于在加权图中找到所有顶点对之间最短路径的算法。这个算法适用于有向图和无向图&#xff0c;并且可以处理负…

网络层 VIII(网络层设备——路由器)【★★★★★★】

一、冲突域与广播域 这里的“域”表示冲突或广播在其中发生并传播的区域。 1. 冲突域 冲突域是指连接到同一物理介质上的所有结点的集合&#xff0c;这些结点之间存在介质争用的现象&#xff08;能产生冲突的所有设备的集合&#xff09;。也就是说&#xff0c;若这些设备同时发…

「滚雪球学MyBatis」教程导航帖(已完结)

写在前面 我是bug菌&#xff0c;CSDN | 掘金 | InfoQ | 51CTO | 华为云 | 阿里云 | 腾讯云 等社区博客专家&#xff0c;C站博客之星Top30&#xff0c;华为云2023年度十佳博主&#xff0c;掘金多年度人气作者Top40&#xff0c;掘金等各大社区平台签约作者&#xff0c;51CTO年度博…

酒茶香链接心灵——探寻现代人幸福生活

科技在飞速发展&#xff0c;人类社会以前所未有的速度向前跃进&#xff0c;物质世界的繁荣达到了前所未有的高度。 然而&#xff0c;这光鲜的背后&#xff0c;却无形中拉远了人与人之间的距离&#xff0c;割裂了传统文化的根脉。 传统文化势弱、“快餐文化”层出不穷&#xff0…

深入探索协同过滤:从原理到推荐模块案例

文章目录 前言一、协同过滤1. 基于用户的协同过滤&#xff08;UserCF&#xff09;2. 基于物品的协同过滤&#xff08;ItemCF&#xff09;3. 相似度计算方法 二、相似度计算方法1. 欧氏距离2. 皮尔逊相关系数3. 杰卡德相似系数4. 余弦相似度 三、推荐模块案例1.基于文章的协同过…

【Prometheus】PromQL向量匹配实现不同标签的向量数据进行运算

✨✨ 欢迎大家来到景天科技苑✨✨ &#x1f388;&#x1f388; 养成好习惯&#xff0c;先赞后看哦~&#x1f388;&#x1f388; &#x1f3c6; 作者简介&#xff1a;景天科技苑 &#x1f3c6;《头衔》&#xff1a;大厂架构师&#xff0c;华为云开发者社区专家博主&#xff0c;…

Xilinx FPGA 原语解析(二):IBUFDS差分输入缓冲器(示例源码及仿真)

目录 前言&#xff1a; 一、原语使用说明 二、原语实例化代码模版 三、使用示例 1.设计文件代码 2.仿真文件代码 3.仿真结果 前言&#xff1a; 本文主要参考资料xilinx手册&#xff0c;《Xilinx 7 Series FPGA and Zynq-7000 All Programmable SoC Libraries Guide for…

全志A527 A133 A523 T527 T133 H6 H8应用无法开启后台服务

总纲 android13 rom 开发总纲说明 文章目录 1.前言2.问题分析3.代码分析4.代码修改4.1 代码修改方法14.2 代码修改方法24.3 代码修改方法35.彩蛋1.前言 像全志的很多平台,普通的app并不能正常的启动后台的服务,这样对于应用层很困扰,无法启动后台的服务,功能就不能正常使用…

【自考zt】【软件工程】【21.10】

关键字&#xff1a; 软件需求基本性质、软件系统需求挑战、耦合&#xff08;高内容&#xff0c;低无直接&#xff09;、内聚&#xff08;初始化时间&#xff09;、uml包、rup边界类、测试首要目标、单元测试最后工作、性能需求 软件开发本质、软件需求规约三种风格、提炼、用…

【MySQL】MySQL库的操作

目录 创建数据库字符集和效验规则查看系统默认字符集和效验规则查看数据库支持的字符集查看数据库支持的字符集效验规则字符集对数据库的影响 操纵数据库查看数据库显示创建语句修改数据库数据库删除总结 数据库的备份和恢复备份恢复注意事项 查看数据库的连接情况 创建数据库 …