刷题笔记之十三(有假币、最难的问题、因子个数)
目录
1. 求正数数组的最小不可组成和
2. 有假币
3. 继承时先调用父类的构造方法;类中的成员变量的初始化操作都在构造方法时进行
4. 学会并理解装箱拆箱,注意new出来的也可以拆!!
5. getDeclaredMethods()是标识类或接口的声明成员(这个表示public private 包访问权限 protected)的集合,不包括继承的成员
6. 最难的问题
7. 因子个数
1. 求正数数组的最小不可组成和
题目链接:求正数数组的最小不可组成和_百度笔试题_牛客网 (nowcoder.com)
题目要求:
题目分析:
上代码
import java.util.*;
public class Solution {/*** 正数数组中的最小不可组成和* 输入:正数数组arr* 返回:正数数组中的最小不可组成和*/public int getFirstUnFormedNum(int[] arr) {//1.设置min和maxint min = Integer.MAX_VALUE;int max = 0;for (int i : arr) {min = Math.min(min,i);max += i;}boolean[] result = new boolean[max+1];//2.设置result初始状态result[0] = true;//3.两层循环遍历arr和resultfor (int i : arr) {for (int j = max; j >= i; j--) {result[j] = result[j-i] || result[j];}}//4.遍历result数组,找出第一个不为true的for (int i = min; i < result.length; i++) {if(!result[i]) {return i;}}//result都为true那就输出max+1return max+1;}
}
2. 有假币
题目链接:有假币__牛客网 (nowcoder.com)
题目要求:
题目分析:
上代码
import java.util.Scanner;
public class Main {public static void main(String[] args) {Scanner scan = new Scanner(System.in);while(scan.hasNext()) {int n = scan.nextInt();if(n == 0) break;int count = 0;while(n >= 2) {n = (int)Math.ceil((double)n/3);count++;}System.out.println(count);}}
}
3. 继承时先调用父类的构造方法;类中的成员变量的初始化操作都在构造方法时进行
以下程序执行的结果是: (C)
A. ZYXX B. ZYXY C. YXYZ D. XYZX
首先明确,继承时先调用父类的构造方法
类中的成员变量的初始化操作都在构造方法时进行
所以当main中new了Z后,先调用父类的构造方法,
而在父类构造方法中又实例化了Y,那就导致先执行Y的构造方法 第一个打印Y
下来X才执行自己的构造方法 第二个打印X
当父类构造执行完后,此时才到执行子类自己的了
Z自己先new了个Y,导致执行Y的构造方法, 第三个打印Y
然后Z才执行自己的构造方法 第四个打印Y
4. 学会并理解装箱拆箱,注意new出来的也可以拆!!
有如下4条语句: ( C )
Integer i01 = 59;
int i02 = 59;
Integer i03 = Integer.valueOf(59);
Integer i04 = new Integer(59);
以下输出结果为false的是:
A. System.out.println(i01 == i02);
B. System.out.println(i01 == i03);
C. System.out.println(i03 == i04);
D. System.out.println(i02 == i04);
Integer i01 = 59; 自动装箱
int i02 = 59;
Integer i03 = Integer.valueOf(59); 装箱
Integer i04 = new Integer(59); 在堆上new了个对象
A. 选项是i01 == i02 就是将i01自动拆箱,还原为整型 true
B. 是i01 == i03 都是Integer 所以为true
C. 是i03 == i04 因为i04是new出来的,就有新的地址,所以i03 和 i04 不等
D. 是i02 == i04 因为i04发生自动拆箱,i04就还原为int了,所以为true 选C
5. getDeclaredMethods()是标识类或接口的声明成员(这个表示public private 包访问权限 protected)的集合,不包括继承的成员
考虑下面这个简单的例子,让我们看看reflection是如何工作的
其中"c.gerDeclaredMethods"的作用是:
A. 取得类的公有方法对象
B. 取得类的所有公有方法名称
C. 取得类的所有方法对象
D. 以上选项都不正确
通过查看源码,可以看到
getMethods()是标识类或接口的所有公共成员的集合,包括继承的成员
而getDeclaredMethods()是标识类或接口的声明成员(这个表示public private 包访问权限 protected)的集合,不包括继承的成员
所以选D,都不正确
6. 最难的问题
题目链接:最难的问题__牛客网 (nowcoder.com)
题目要求:
题目分析:
上代码
import java.util.Scanner;public class Main {public static void main(String[] args) {Scanner scan = new Scanner(System.in);while(scan.hasNext()) {String str = scan.nextLine();StringBuilder sb = new StringBuilder();for (int i = 0; i < str.length(); i++) {char c = str.charAt(i);if(c == ' ') {sb.append(" ");}else {sb.append((char)(c > 'E' ? c-5 : c+21));}}System.out.println(sb);}}
}
7. 因子个数
题目链接:因子个数__牛客网 (nowcoder.com)
题目要求:
题目分析:
上代码
// write your code here
import java.util.Scanner;public class Main{public static void main(String[] args) {Scanner scan = new Scanner(System.in);while(scan.hasNext()) {int n = scan.nextInt();int count = 0;for (int i = 2; i*i <= n; i++) {if(n%i == 0) {while(n%i == 0) {n /= i;}count++;}}//走到这里有两种情况,n=1 n != 1if(n != 1) count++;System.out.println(count);}}
}
相关文章:

刷题笔记之十三(有假币、最难的问题、因子个数)
目录 1. 求正数数组的最小不可组成和 2. 有假币 3. 继承时先调用父类的构造方法;类中的成员变量的初始化操作都在构造方法时进行 4. 学会并理解装箱拆箱,注意new出来的也可以拆!! 5. getDeclaredMethods()是标识类或接口的声明成员(这个表示public private 包访问权限 pro…...

5个代码技巧,加速你的Python
5个代码技巧,加速你的Python 人生苦短,快学Python! Python作为一种功能强大的编程语言,因其简单易学而受到很多初学者的青睐。它的应用领域又非常广泛:科学计算、游戏开发、爬虫、人工智能、自动化办公、Web应用开发…...

字节跳动软件测试岗,前两面过了,第三面HR天坑!竟然跟我说……
阎王易见,小鬼难缠。我一直相信这个世界上好人居多,但是也没想到自己也会在阴沟里翻船。我感觉自己被字节跳动的HR坑了。在这里,我只想告诫大家,offer一定要拿到自己的手里才是真的,口头offer都是不牢靠的,…...

[数据分析与可视化] Python绘制数据地图1-GeoPandas入门指北
本文主要介绍GeoPandas的基本使用方法,以绘制简单的地图。GeoPandas是一个Python开源项目,旨在提供丰富而简单的地理空间数据处理接口。GeoPandas扩展了Pandas的数据类型,并使用matplotlib进行绘图。GeoPandas官方仓库地址为:GeoP…...

ChatGPT加强版GPT-4面世,打工人的方式将被颠覆
🔗 运行环境:chatGPT,GPT-4 🚩 撰写作者:左手の明天 🥇 精选专栏:《python》 🔥 推荐专栏:《算法研究》 #### 防伪水印——左手の明天 #### 💗 大家好&#…...

Python逆向及相关知识
今天第二次看见python字节码的逆向题,然后发现了一个介绍Python逆向的文章,所以把文章里的内容简单整理记录一下。 文章参考:https://www.cnblogs.com/blili/p/11799398.html Python运行原理: 一.什么是Python Python 是一种解…...

Python基础语法、注意点加实例全解
本篇文章我们讲解Python最基础语法,包含:数据类型、注释、变量、类型转换、命名规范、运算符、字符串拼接、字符串格式化、if条件判断、while循环、for循环、函数、读取文件、写入文件、异常捕获、包导入等。通过讲解语法注意事项实例代码详解࿰…...
ETH RPC搭建
配置选择先是看了aws、谷歌云、阿里云这个配置都要1-2wrmb一个月,太贵了问了很多朋友,打算用hetzner,50欧一个月足以我选的配置:64gb,2tb ssd开好后在邮箱收到信息链接后按以下步骤安装系统:https://0o0.me…...
南京邮电大学数据库第一次课后作业
1.单选题 (5分) (B)是存储在计算机内有结构的数据的集合。 (A)数据库系统 (B)数据库 (C)数据库管理系统 (D)数据结构 2.单选题 (5分) 数据库的特点之一是数据的共享,严格的讲,这里的…...

近期投简历、找日常实习的一些碎碎念(大二---测试岗)
嘿嘿嘿,我又回来了,相信不少兄弟已经发现我似乎已经断更了好久,哈哈,我是尝试去找实习,投简历面试去了。 先说一下背景。 目录 背景 求职进行中 简历 投递和沟通 收获和感受 背景 博主,大二软件工程…...

ThreadLocal的使用
1. ThreadLocal介绍 ThreadLocal顾名思义,就是线程的本地变量,只有当前线程可见,对其他线程来说是封闭且隔离的。每一个线程为自己本身创建ThreadLocal变量,只有当前线程可以访问,其他的线程不可以,从根源…...

Java ~ Reference【总结】
一 概述 简介 在JDK1.2之前,Java中引用的定义是十分传统的:如果引用类型的变量中存储的数值代表的是另一块内存的起始地址,就称这块内存代表着一个引用。在这种定义之下,一个对象只有被引用和没有被引用两种状态。 实际上…...
最快方法求最长上升子序列(LIS)+最长公共子序列(LCS)模板(C/C++)
目录 1 LIS算法(最长上升子序列) 1.1 简介 1.2 代码 1.3 相关解释 2 LCS算法(最长公共子序列) 2.1 简介 2.2 代码(动态规划,时间复杂度O(nlogn)) 2.3 特殊…...

012+limou+C语言深入知识——(4)“结构体”与“枚举体”与“联合体”
一、结构体 1、结构体基础 (1)结构体完全声明 struct tag {member-list; }variable-list;//描述一个人 struct people {char name[10];//人名int age;//年龄int idnumber;//身份证 };(2)结构体不完全声明(匿名结构体…...

Canvas百战成神-圆(1)
Canvas百战成神-圆 初始化容器 <canvas id"canvas"></canvas>canvas{border: 1px solid black; }让页面占满屏幕 *{margin: 0;padding: 0; } html,body{width: 100%;height: 100%;overflow: hidden; } ::-webkit-scrollbar{display: none; }初始化画笔…...

详解分库分表设计
详解分库分表设计 背景 在传统的单机数据库架构中,所有数据都存储在同一个数据库中,随着业务规模的不断扩大,数据量和并发量也会越来越大,这会给数据库的性能和可用性带来挑战。此外,当单机数据库的容量达到瓶颈时…...

动态规划-基础(斐波那契数、爬楼梯、使用最小花费爬楼梯、不同路径、不同路径II、整数拆分、不同的二叉搜索树)
动态规划,英文:Dynamic Programming,简称DP,如果某一问题有很多重叠子问题,使用动态规划是最有效的。所以动态规划中每一个状态一定是由上一个状态推导出来的。动态规划问题,五步走:状态定义&am…...

深入理解WebSocket协议
“ 一直以来对WebSocket仅停留在使用阶段,也没有深入理解其背后的原理。当看到 x x x was not upgraded to websocket,我是彻底蒙了,等我镇定下来,打开百度输入这行报错信息,随即看到的就是大家说的跨域,或…...

Vector的扩容机制
到需要扩容的时候,Vector会根据需要的大小,创建一个新数组,然后把旧数组的元素复制进新数组。 我们可以看到,扩容后,其实是一个新数组,内部元素的地址已经改变了。所以扩容之后,原先的迭代器会…...

22讲MySQL有哪些“饮鸩止渴”提高性能的方法
短连接风暴 是指数据库有很多链接之后只执行了几个语句就断开的客户端,然后我们知道数据库客户端和数据库每次连接不仅需要tcp的三次握手,而且还有mysql的鉴权操作都要占用很多服务器的资源。话虽如此但是如果连接的不多的话其实这点资源无所谓的。 但是…...
树莓派超全系列教程文档--(62)使用rpicam-app通过网络流式传输视频
使用rpicam-app通过网络流式传输视频 使用 rpicam-app 通过网络流式传输视频UDPTCPRTSPlibavGStreamerRTPlibcamerasrc GStreamer 元素 文章来源: http://raspberry.dns8844.cn/documentation 原文网址 使用 rpicam-app 通过网络流式传输视频 本节介绍来自 rpica…...

工业安全零事故的智能守护者:一体化AI智能安防平台
前言: 通过AI视觉技术,为船厂提供全面的安全监控解决方案,涵盖交通违规检测、起重机轨道安全、非法入侵检测、盗窃防范、安全规范执行监控等多个方面,能够实现对应负责人反馈机制,并最终实现数据的统计报表。提升船厂…...
在鸿蒙HarmonyOS 5中实现抖音风格的点赞功能
下面我将详细介绍如何使用HarmonyOS SDK在HarmonyOS 5中实现类似抖音的点赞功能,包括动画效果、数据同步和交互优化。 1. 基础点赞功能实现 1.1 创建数据模型 // VideoModel.ets export class VideoModel {id: string "";title: string ""…...

关于iview组件中使用 table , 绑定序号分页后序号从1开始的解决方案
问题描述:iview使用table 中type: "index",分页之后 ,索引还是从1开始,试过绑定后台返回数据的id, 这种方法可行,就是后台返回数据的每个页面id都不完全是按照从1开始的升序,因此百度了下,找到了…...

剑指offer20_链表中环的入口节点
链表中环的入口节点 给定一个链表,若其中包含环,则输出环的入口节点。 若其中不包含环,则输出null。 数据范围 节点 val 值取值范围 [ 1 , 1000 ] [1,1000] [1,1000]。 节点 val 值各不相同。 链表长度 [ 0 , 500 ] [0,500] [0,500]。 …...

高危文件识别的常用算法:原理、应用与企业场景
高危文件识别的常用算法:原理、应用与企业场景 高危文件识别旨在检测可能导致安全威胁的文件,如包含恶意代码、敏感数据或欺诈内容的文档,在企业协同办公环境中(如Teams、Google Workspace)尤为重要。结合大模型技术&…...

【论文阅读28】-CNN-BiLSTM-Attention-(2024)
本文把滑坡位移序列拆开、筛优质因子,再用 CNN-BiLSTM-Attention 来动态预测每个子序列,最后重构出总位移,预测效果超越传统模型。 文章目录 1 引言2 方法2.1 位移时间序列加性模型2.2 变分模态分解 (VMD) 具体步骤2.3.1 样本熵(S…...

SpringTask-03.入门案例
一.入门案例 启动类: package com.sky;import lombok.extern.slf4j.Slf4j; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.cache.annotation.EnableCach…...
代理篇12|深入理解 Vite中的Proxy接口代理配置
在前端开发中,常常会遇到 跨域请求接口 的情况。为了解决这个问题,Vite 和 Webpack 都提供了 proxy 代理功能,用于将本地开发请求转发到后端服务器。 什么是代理(proxy)? 代理是在开发过程中,前端项目通过开发服务器,将指定的请求“转发”到真实的后端服务器,从而绕…...

以光量子为例,详解量子获取方式
光量子技术获取量子比特可在室温下进行。该方式有望通过与名为硅光子学(silicon photonics)的光波导(optical waveguide)芯片制造技术和光纤等光通信技术相结合来实现量子计算机。量子力学中,光既是波又是粒子。光子本…...