自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(70)
  • 收藏
  • 关注

原创 java容器

​List 选择频繁读取 →ArrayList频繁增删 →LinkedList​Set 选择去重 →HashSet排序 →TreeSet​Map 选择快速访问 →HashMap有序键 →TreeMap​竞赛优化:优先使用组合提升 I/O 性能通过合理选择集合类型,可显著提升算法效率。例如,在统计字符频率时,HashMap的 O(1) 查找性能远优于ArrayList的 O(n) 遍历。

2025-03-30 01:58:27 712

原创 二分问题

*** 寻找右边界 - 最后一个≤target的元素* @param nums 有序数组* @param target 目标值* @return 最后一个≤target的索引,未找到返回-1*/} else {// right可能等于-1表示所有元素都>target。

2025-03-30 01:52:34 329

原创 java方法

valueOf方法的主要作用是实现不同数据类型之间的转换,在不同的类中有不同的具体实现和用途,使用时要根据具体需求来选择合适的valueOf方法。

2025-03-30 01:52:23 597

原创 java快速输入输出

在 Java 中处理输入输出时,不同类适用于不同场景。

2025-03-30 01:24:08 429

原创 数学问题

将十进制整数转换为二进制后,有很多按位运算的运算符。如果能善于利用位运算的一些性质,往往能达到事半功倍的效果。

2025-03-27 00:54:42 843

原创 dp问题

线性动态规划,即具有线性阶段划分的动态规划。

2025-03-27 00:29:36 624

原创 搜索问题

深度优先搜索(DFS),即按照深度优先的顺序搜索的算法。深度优先搜索一般使用栈来实现。

2025-03-25 17:08:17 946

原创 03.09

直达通天路·小 A 历险记第二篇。

2025-03-09 17:58:08 290

原创 03.08

上图给出了一个数字三角形。从三角形的顶部到底部有很多条不同的路径。对于每条路径,把路径上面的数加起来可以得到一个和,你的任务就是找到最大的和。路径上的每一步只能从一个数走到下一层和它最近的左边的那个数或者右 边的那个数。此外,向左下走的次数与向右下走的次数相差不能超过 1。

2025-03-08 20:38:13 642

原创 背包九讲

有 NN 件物品和一个容量是 VV 的背包。每件物品只能使用一次。第 ii 件物品的体积是 vivi,价值是 wiwi。求解将哪些物品装入背包,可使这些物品的总体积不超过背包容量,且总价值最大。输出最大价值。

2025-03-08 18:29:39 1216

原创 03.06

01背包 无优化一维数组优化:就是滚动数组滚动更新,从大到小更新因为是01背包为题,从小到大会有重复的变成完全背包问题。

2025-03-06 14:15:42 551

原创 03.05

农夫约翰的奶牛们非常爱吃甜食,尤其爱吃拐杖糖。约翰一共有 NN 头奶牛,编号 1∼N1∼N,其中第 ii 头奶牛的初始高度为 aiai。约翰给奶牛们准备了 MM 根拐杖糖,编号 1∼M1∼M,其中第 ii 根的高度为 bibi。约翰会按照糖果的编号顺序,每次拿出一根糖果喂给奶牛们,直到所有糖果都被喂完为止。每当拿出一根糖果后,约翰会将其上端固定悬挂,下端自由下垂至刚好接触地面。然后,奶牛们按照编号顺序,依次走到糖果面前,将糖果自下而上的啃食至自己的高度(因为更高的地方吃不到了)。

2025-03-05 17:34:48 693

原创 java容器

/ 创建一个 Vector// 添加元素// 访问元素System.out.println("第一个元素: " + vector.get(0));// 修改元素System.out.println("修改后的第二个元素: " + vector.get(1));// 删除元素System.out.println("删除第一个元素后,Vector 的大小: " + vector.size());// 遍历元素System.out.println("遍历 Vector:");

2025-03-03 05:41:14 984

原创 2.20.....

高精度加法,相当于 a+b problem,。

2025-02-28 17:46:55 792

原创 format valueof

【代码】format valueof。

2025-02-28 15:50:40 165

原创 P2670 [NOIP 2015 普及组] 扫雷游戏

NOIP2015 普及组 T2。

2025-02-28 15:38:04 162

原创 P1042 [NOIP 2003 普及组] 乒乓球

在 11 分制下,此时比赛的结果是华华第一局 11 比 0 获胜,第二局 11 比 0 获胜,正在进行第三局,当前比分 1 比 1。而在 21 分制下,此时比赛结果是华华第一局 21 比 0 获胜,正在进行第二局,比分 2 比 1。如果一局比赛刚开始,则此时比分为 0 比 0。其中第一部分是 11 分制下的结果,第二部分是 21 分制下的结果,两部分之间由一个空行分隔。华华通过以下方式进行分析,首先将比赛每个球的胜负列成一张表,然后分别计算在 11 分制和 21 分制下,双方的比赛结果(截至记录末尾)。

2025-02-28 14:26:31 316

原创 BufferedReader PrintWriter

类提供了缓冲功能,它从字符输入流中读取文本,缓冲各个字符,从而提供字符、数组和行的高效读取。通常与结合使用,用于将字节流转换为字符流。类用于向文本输出流打印对象的格式化表示形式。它提供了多种print和println方法,用于输出不同类型的数据,并且可以自动刷新缓冲区。

2025-02-27 16:58:02 314

原创 小红和小紫的拿球游戏(B组)

来源:牛客网在一个箱子中,有aaa个红球和bbb个紫球,小红和小紫轮流取球,小红先手,每轮必须恰好取走一个球,共取a+ba+ba+b轮后游戏结束。小红希望第一次取的球的颜色和最后一次相同,小紫希望第一次取的球的颜色和最后一次不同。但小红戴了一个特殊的透视眼镜,她可以看到箱子内部球的颜色,因此每次可以取到她想取的颜色;而小紫每次则是在剩余的球中随机取一个。小红想知道,若自己采用最优的策略,最终自己获胜的概率是多少?

2025-02-27 16:49:38 288

原创 小红的质数数组(A组,B组)

来源:牛客网小红有一个数组,这个数组每一对相邻的元素的和都是质数。但是小紫偷偷的把数组中的一对 axa_xax​ 和 ax+1a_{x+1}ax+1​ 进行了交换,你能找出是 xxx 是多少吗?

2025-02-27 16:47:58 817

原创 Stringbuilder

类提供了丰富的方法来操作可变的字符序列,适用于需要频繁修改字符串内容的场景,相比直接使用String类进行拼接等操作,能显著提高性能。

2025-02-27 15:57:54 205

原创 小红的回文子串(B组)

来源:牛客网小红拿到了一个字符串,她可以操作最多1次:修改任意一个字符。小红希望操作结束后,长度为3的回文连续子串的数量尽可能多。请你求出这个数量。

2025-02-27 15:40:03 452

原创 sort。。

假设我们有一个二维整数数组,数组的每一行代表一个数据记录,每一列代表不同的属性。现在我们希望按照某一列的值对这些行进行排序。例如,我们有如下二维数组:收起java我们想按照第二列(索引为 1)的值对这些行进行升序排序。

2025-02-27 15:26:31 305

原创 Arrays.sort

除了实现Comparable接口,还可以使用接口来定义自定义的比较规则。

2025-02-27 15:12:54 397

原创 小红的字母游戏(A组)

来源:牛客网。

2025-02-27 15:06:15 302

原创 6118. 蛋糕游戏

贝茜和埃尔茜发现了一行 NN 个蛋糕(NN 为偶数),大小依次为 a1,a2,…,aNa1,a2,…,aN。两头奶牛都想吃到尽可能多的蛋糕。但是,作为非常文明的奶牛,她们决定玩一个游戏来分割蛋糕!游戏在两头奶牛之间轮流进行回合。当只剩下一个蛋糕时,贝茜吃掉它,而埃尔茜吃掉她藏起来的所有蛋糕。如果两头奶牛都采取最优策略以最大化她们吃到的蛋糕量,并且贝茜先进行回合,那么每头奶牛将会吃到多少蛋糕?

2025-02-26 01:47:43 260

原创 6123. 哞叫时间

农夫约翰正在试图向埃尔茜描述他最喜欢的 USACO 竞赛,但她很难理解为什么他这么喜欢它。他说「竞赛中我最喜欢的部分是贝茜说 『现在是哞哞时间』并在整个竞赛中一直哞哞叫」。埃尔茜仍然不理解,所以农夫约翰将竞赛以文本文件形式下载,并试图解释他的意思。竞赛被定义为一个长度为 NN 的小写字母字符串。一种哞叫一般地定义为子串 cicjcjcicjcj,其中某字符 cici 之后紧跟着 22 个某字符 cjcj,且 ci≠cjci≠cj。

2025-02-26 01:44:44 257

原创 6122. 农夫约翰的奶酪块

农夫约翰有一块立方体形状的奶酪,它位于三维坐标空间中,从 (0,0,0)(0,0,0) 延伸至 (N,N,N)(N,N,N)。农夫约翰将对他的奶酪块执行一系列 QQ 次更新操作。对于每次更新操作,农夫约翰将从整数坐标 (x,y,z)(x,y,z) 到 (x+1,y+1,z+1)(x+1,y+1,z+1) 处切割出一个 1×1×11×1×1 的奶酪块,其中 0≤x,y,z<N0≤x,y,z<N。输入保证在农夫约翰切割的位置上存在一个 1×1×11×1×1 的奶酪块。

2025-02-26 00:11:43 306 2

原创 常用基础。

【代码】常用基础。

2025-02-26 00:04:17 167

原创 c语言读取字符串

【代码】c语言读取字符串。

2024-12-18 09:18:43 877

原创 P1514 [NOIP2010 提高组] 引水入城

故一座城市能建造输水站的前提,是存在比它海拔更高且拥有公共边的相邻城市,已经建有水利设施。由于第 NN 行的城市靠近沙漠,是该国的干旱区,所以要求其中的每座城市都建有水利设施。在一个遥远的国度,一侧是风景秀美的湖泊,另一侧则是漫无边际的沙漠。该国的行政区划十分特殊,刚好构成一个 NN 行 MM 列的矩形,如上图所示,其中每个格子都代表一座城市,每座城市都有一个海拔高度。如果不能满足要求,输出的第一行是整数 00,第二行是一个整数,代表有几座干旱区中的城市不可能建有水利设施。NOIP2010 提高组 T4。

2024-12-17 00:14:43 685

原创 深度优先搜索

一个如下的 6×66×6 的跳棋棋盘,有六个棋子被放置在棋盘上,使得每行、每列有且只有一个,每条对角线(包括两条主对角线的所有平行线)上至多有一个棋子。上面的布局可以用序列 2 4 6 1 3 52 4 6 1 3 5 来描述,第 ii 个数字表示在第 ii 行的相应位置有一个棋子,如下:行号 1 2 3 4 5 61 2 3 4 5 6列号 2 4 6 1 3 52 4 6 1 3 5这只是棋子放置的一个解。请编一个程序找出所有棋子放置的解。并把它们以上面的序列方法输出,解按字典顺序排列。

2024-12-07 08:23:45 1036 1

原创 P3131 [USACO16JAN] Subsequences Summing to Sevens S

给你n个数,分别是a[1],a[2],...,a[n]。求一个最长的区间[x,y],使得区间中的数(a[x],a[x+1],a[x+2],...,a[y-1],a[y])的和能被7整除。若没有符合要求的区间,输出0。

2024-12-06 23:52:20 444

原创 第6届传智杯复赛第一场

来源:牛客网。

2024-12-06 01:31:29 995

原创 2023年第六届传智杯程序设计挑战赛初赛

来源:牛客网。

2024-12-05 18:28:32 1077

原创 洛谷基础算法题

由于乳制品产业利润很低,所以降低原材料(牛奶)价格就变得十分重要。帮助 Marry 乳业找到最优的牛奶采购方案。Marry 乳业从一些奶农手中采购牛奶,并且每一位奶农为乳制品加工企业提供的价格可能相同。此外,就像每头奶牛每天只能挤出固定数量的奶,每位奶农每天能提供的牛奶数量是一定的。每天 Marry 乳业可以从奶农手中采购到小于或者等于奶农最大产量的整数数量的牛奶。给出 Marry 乳业每天对牛奶的需求量,还有每位奶农提供的牛奶单价和产量。计算采购足够数量的牛奶所需的最小花费。

2024-12-05 02:31:41 614

原创 Java Iterator(迭代器)

Java迭代器(Iterator)是 Java 集合框架中的一种机制,是一种用于遍历集合(如列表、集合和映射等)的接口。它提供了一种统一的方式来访问集合中的元素,而不需要了解底层集合的具体实现细节。Java Iterator(迭代器)不是一个集合,它是一种用于访问集合的方法,可用于迭代和等集合。Iterator 是 Java 迭代器最简单的实现,ListIterator 是 Collection API 中的接口, 它扩展了 Iterator 接口。

2024-12-04 12:33:45 799

原创 Java HashMap

HashMap 是一个散列表,它存储的内容是键值对(key-value)映射。HashMap 实现了 Map 接口,根据键的 HashCode 值存储数据,具有很快的访问速度,最多允许一条记录的键为 null,不支持线程同步。HashMap 是无序的,即不会记录插入的顺序。HashMap 继承于AbstractMap,实现了 Map、Cloneable、java.io.Serializable 接口。

2024-12-04 12:20:03 991

原创 Java HashSet

HashSet 基于 HashMap 来实现的,是一个不允许有重复元素的集合。HashSet 允许有 null 值。HashSet 是无序的,即不会记录插入的顺序。HashSet 不是线程安全的, 如果多个线程尝试同时修改 HashSet,则最终结果是不确定的。您必须在多线程访问时显式同步对 HashSet 的并发访问。HashSet 实现了 Set 接口。HashSet 中的元素实际上是对象,一些常见的基本类型可以使用它的包装类。

2024-12-04 12:03:35 1065

原创 LinkedList

链表(Linked list)是一种常见的基础数据结构,是一种线性表,但是并不会按线性的顺序存储数据,而是在每一个节点里存到下一个节点的地址。链表可分为单向链表和双向链表。一个单向链表包含两个值: 当前节点的值和一个指向下一个节点的链接。一个双向链表有三个整数值: 数值、向后的节点链接、向前的节点链接。Java LinkedList(链表) 类似于 ArrayList,是一种常用的数据容器。与 ArrayList 相比,LinkedList 的增加和删除的操作效率更高,而查找和修改的操作效率较低。

2024-12-04 11:56:46 1244

贪吃蛇网页小游戏,有排名

贪吃蛇网页小游戏,有排名

2024-11-12

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除