自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

江上酒

个人大学生活的缩影

  • 博客(79)
  • 收藏
  • 关注

原创 springboot请求参数解析

是从 url 模板中获取参数值, 即这种风格的 url: http://localhost:8080/user/{id};是从 request 里面获取参数值,即这种风格的ur:lhttp://localhost:8080/user?required 属性:true 表示该参数必须要传,否则就会报 404 错误,false 表示可有可无。defaultValue 属性:默认值,表示如果请求中没有同名参数时的默认值。皆可,用来获取路径中的参数,必须带上@PathVariable。get和post皆可。

2024-05-09 23:47:21 234

原创 linux配置

ssh-keygen。

2024-04-14 21:15:50 219

原创 Acwing151周赛T2序列数量,组合计数

若整数 b,m 互质,并且对于任意的整数 a,如果满足 b|a (b能被a整除),则存在一个整数 x,使得。b 存在乘法逆元的充要条件是 b 与模数 m 互质。当模数 m 为质数时,b。我们只会方程,即等式,这题是不等式。% m 的结果,可以用a 乘上逆元,即 a * b。,则称 x 为 b 的模 m 乘法逆元,记为 b。=n时,此时属于多算了,此时的序列只有一种即a。由于是非负整数所有每个数的范围是0 <= a。的范围,然后再减去多算的那些0<=a。此时还不满足我们的知识,因为此时的。

2024-04-14 11:38:04 444

原创 Git merge 报告 “Already up-to-date“尽管存在差异

Git merge 报告 "Already up-to-date"尽管存在差异

2023-02-09 16:47:42 1420 2

原创 重写和重载的区别

重写和重载的区别

2023-01-31 09:36:21 117

原创 x&x-1的作用

x & (x-1)的作用

2022-12-19 21:37:13 262

原创 linux包管理器总结

linux包管理器总结

2022-09-23 13:03:49 612 1

原创 docker安装和简要总结

docker在cenos和ubuntu下的安装和一些简要命令

2022-09-23 12:40:45 225

原创 leetcodeT45跳跃游戏II

leetcodeT45跳跃游戏II

2022-09-09 12:51:46 70

原创 信息学奥赛总结01

信息学奥赛总结

2022-07-02 12:02:27 368 8

原创 vector总结

输入格式第一行一个数n,表示二维数组的行数之后n行,每行若干个数,表示该行内容,-1表示该行结束输出该二维数组的有效内容样例输入样例输出二维数组是数组的数组,即一维数组内的每一项又是一个一维数组。若视为矩阵,第一维是行,第二维是列。若由vector构成一维数组,即一维数组内的每一项都是一个vector,按照vector的动态特性,就构成了列数可变的二维数组了。操作vector数组时,第一维按普通数组去操作,第二维按vector的方式操作。vector数组很重要,需要熟练掌握。..........

2022-06-10 19:38:09 326

原创 leetcode289周赛

6070. 计算字符串的数字和这个题模拟一遍,首先把字符串按照k分割,用substr接着把分割好的字符串转为数字相加,然后转为字符串再赋给sclass Solution {public: string digitSum(string s, int k) { while(s.size() > k) { string res; for(int i = 0; i < s.si

2022-04-17 12:58:53 504

原创 蚂蚱跳跃问题

蚂蚱跳跃问题题目大意:一个蚂蚱最初位于坐标轴的原点,现在蚂蚱要跳跃到坐标轴的s点,跳跃规则是蚂蚱既可以往正方向跳跃,也可以往负方向跳跃,蚂蚱第一次跳跃1个单位,以后的跳跃步数在前一步的基础上加一。现在求蚂蚱跳跃到s点最少需要多少步数?原题截图如下:题意分析:首先看题目的数据最大约为10亿,意味着不可能采用搜索、暴力等一些耗时的解决办法,也不会让你在代码中开辟较大的数组,那么拿到这个问题如何去解决呢?初步分析假如S为负,则只需求正S的结果如果目标点S恰好能等于S = F(n) =(n(n+1

2022-03-13 23:24:49 419

原创 leetcode 5203. 统计可以提取的工件

5203. 统计可以提取的工件这题刚开始以为模拟一下,最不济用一下二分,对于每一块地方,找到最先开始挖掘的下表,和最后结束的下标。注意这里面有重复元素,所以二分出来以后还需要判断.class Solution {public: int digArtifacts(int n, vector<vector<int>>& artifacts, vector<vector<int>>& dig) { //

2022-03-13 14:27:08 628

原创 idea 方法注释的快捷键设置

idea设置方法注释的快捷键

2022-02-09 12:44:23 4800

原创 Windows10关闭占用某一端口号的进程

查看端口,找到PIDnetstat -ano:查看所有端口的占用情况netstat -aon|findstr “端口号”:查看指定端口的占用情况关闭进程taskkill -PID 进程的pid -F

2022-01-07 16:32:36 257

原创 @TableId(value = “id“,type = IdType.AUTO) 设置后无效的解决办法

@TableId(type = IdType.ASSIGN_ID)private Long id;数据库字段必须是bigint,实体类必须要是Long(注意是Long,不是long)

2022-01-06 19:21:02 3207 2

原创 C++string中文的匹配问题

问题引入正常字符串匹配,全英文string str = "abc";if ((int)str.find("bc") > 0) printf("okay\n"); // 匹配成功else printf("none\n"); // 匹配失败// 输出 okay如果其中包含中文string str = "人类";if ((int)str.find("死") > 0) printf("okay\n"); // 匹配成功else printf("none

2021-09-16 19:22:59 3004 2

转载 idea中设置maven默认位置 (每次都要调整位置是不是很烦!)

在idea中每次创建maven或者打开新项目都要调整位置是不是很烦~可以通过 一下方式设置maven默认配置 不仅仅对maven有效,其他默认属性同样管用方法介绍:File->Other Settings -> Settings for New Project参考: https://blog.csdn.net/qq_42183409/article/details/90340457...

2021-08-03 14:25:20 311

原创 数据库笔记

建数据库:CREATE DATABASE `mybase`建表CREATE TABLE `t2` ( `id` int(10) NOT NULL AUTO_INCREMENT COMMENT 'id', `name` varchar(20) NOT NULL DEFAULT '1' COMMENT '姓名', PRIMARY KEY (`id`)) ENGINE=InnoDB DEFAULT CHARSET=utf8change 和 modify 的区别modify 修改约束,例

2021-07-24 18:42:00 98 2

原创 数组延伸.

文章目录题目一、主要思路二、实现题目数组延伸给定一个初始长度为 n 的数组 a 以及一个整数 x。我们现在要对数组 a 进行延伸,具体方法如下:我们从数组中的第一个元素开始,逐个遍历数组中的每个元素。当遍历到数组中的元素 q 时,如果 q 能够被 x 整除,则在数组的末尾添加 x 个整数 qx,并开始遍历下一个元素。否则,停止遍历,数组延伸结束。注意,后面新增的元素也要被考虑在内,加以处理和判断。请计算,在数组延伸结束后,数组中所有元素的和。输入格式第一行包含整数 T,表示共有 T

2021-06-07 19:59:55 183

原创 第 244 场周赛

目录[ 判断矩阵经轮转后是否一致](https://leetcode-cn.com/problems/determine-whether-matrix-can-be-obtained-by-rotation/)主要考查数组的翻转,直接新建一个数组,将行翻转为列即可 判断矩阵经轮转后是否一致给你两个大小为 n x n 的二进制矩阵 mat 和 target 。现 以 90 度顺时针轮转 矩阵 mat 中的元素 若干次 ,如果能够使 mat 与 target 一致,返回 true ;否则,返回 false

2021-06-06 17:52:20 124

原创 Java多态

这里写目录标题什么是多态为什么存在多态多态存在的条件多态注意事项向上转型&向下转型instancof关键字instanof用途instanof 例子向下转型的意义?什么是多态即同一个方法可以根据发送对象的不同而采用多种不同的行为方式一个对象的实际类型是确定的,但可以指向对象的引用的类型有很多为什么存在多态有了多态可以让程序的可扩展性更强,写程序时不用关心他是一个什么样的状态多态存在的条件有继承关系子类重写父类方法父类引用指向子类的对象多态注意事项多态是方法的多态,属

2021-05-30 14:32:14 77

原创 Java字符编码问题

编程时通常会遇到两种编码形式ANSI 与UTF-8形式,ANSI是根据地区而更改的编码格式,在中国大陆为GBK,在美国就是ASCII编码.而UNF-8是Unicode编码的一个小分支,Unicode是全世界统一字符串乱码的产生本质上都是由于 字符串原本的编码格式 与 读取时解析用的编码格式 不一致导致的Java中getBytes函数的作用使用命名Charset将此字符串置入一系列字节,将结果存储到新字节数组中。简单说就是byte[] a = b.getBytes("UTF-8");将b字符.

2021-05-27 22:04:35 103

原创 Java I/O流

文章目录什么是I/O流?是相对谁来说的俩亲爹inputstream 和 outputstream最基础的字节读入最基础的字节读入复制文件(手动构造缓冲区)利用buffereader快速复制文件什么是I/O流?是相对谁来说的受中华传统文化影响,流这一个字就概括整个输出输出,因此国人有些难以理解,简单来说就是I/O像水一样,在程序于文件之间流动,可以类比为水库到你家的管道I/O 即input 和 ouput,重点是所有的输出输出都是相对于程序而言的,简单来说,如果你用IDEA写代码,那么输入输出就是相对于

2021-05-25 22:46:35 193

原创 约瑟夫环问题(递归解决)

文章目录题目二、使用步骤1.引入库2.读入数据总结题目二、使用步骤1.引入库代码如下(示例):import numpy as npimport pandas as pdimport matplotlib.pyplot as pltimport seaborn as snsimport warningswarnings.filterwarnings('ignore')import sslssl._create_default_https_context = ssl._create.

2021-05-18 15:41:04 1036 1

原创 LeetCode241周赛

文章目录找出所有子集的异或总和再求和思路思路找出所有子集的异或总和再求和一个数组的 异或总和 定义为数组中所有元素按位 XOR 的结果;如果数组为 空 ,则异或总和为 0 。例如,数组 [2,5,6] 的 异或总和 为 2 XOR 5 XOR 6 = 1 。给你一个数组 nums ,请你求出 nums 中每个 子集 的 异或总和 ,计算并返回这些值相加之 和 。注意:在本题中,元素 相同 的不同子集应 多次 计数。数组 a 是数组 b 的一个 子集 的前提条件是:从 b 删除几个(也可能不删除

2021-05-16 17:33:53 112

原创 不同路径数

文章目录题目一、主要思路二、实现题目给定一个 n×m 的二维矩阵,其中的每个元素都是一个 [1,9] 之间的正整数。从矩阵中的任意位置出发,每次可以沿上下左右四个方向前进一步,走过的位置可以重复走。走了 k 次后,经过的元素会构成一个 (k+1) 位数。请求出一共可以走出多少个不同的 (k+1) 位数。输入格式第一行包含三个整数 n,m,k。接下来 n 行,每行包含 m 个空格隔开的整数,表示给定矩阵。输出格式输出一个整数,表示可以走出的不同 (k+1) 位数的个数。数据范围对于

2021-05-14 21:03:47 177

原创 最长公共子序列

文章目录题目一、主要思路二、实现题目给出两个长度为 n 的整数序列,求它们的最长公共子序列(LCS)的长度,保证第一个序列中所有元素都不重复。注意:第一个序列中的所有元素均不重复。第二个序列中可能有重复元素。一个序列中的某些元素可能不在另一个序列中出现。输入格式第一行包含一个整数 n。接下来两行,每行包含 n 个整数,表示一个整数序列。输出格式输出一个整数,表示最长公共子序列的长度。数据范围1 ≤ n ≤ 106,序列内元素取值范围 [1,106]。输入样例1:51 2

2021-05-14 20:32:52 189

原创 LeetCode打家劫舍

文章目录前言打家劫舍Ⅰ主要思路实现思路二:dp + 贪心打家劫舍Ⅱ主要思路实现打家劫舍Ⅲ主要思路:实现总结前言提示:这里可以添加本文要记录的大概内容:例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。提示:以下是本篇文章正文内容,下面案例可供参考打家劫舍Ⅰ主要思路f[i][0]代表抢劫前i家并且不抢劫第i家的最值f[i][1]代表抢劫前i家并且抢劫第i家的最值实现代码如下:const int N=105;int

2021-05-13 00:02:44 80

原创 最大异或和

文章目录题目一、主要思路二、实现题目给定一个非负整数数列 a,初始长度为 N。请在所有长度不超过 M 的连续子数组中,找出子数组异或和的最大值。子数组的异或和即为子数组中所有元素按位异或得到的结果。注意:子数组可以为空。输入格式第一行包含两个整数 N,M。第二行包含 N 个整数,其中第 i 个为 ai。输出格式输出可以得到的子数组异或和的最大值。数据范围对于 20% 的数据,1≤M≤N≤100对于 50% 的数据,1≤M≤N≤1000对于 100% 的数据,1≤M≤N≤105,

2021-05-12 20:45:04 1926

原创 最大的和

文章目录题目一、主要思路二、实现双指针做法前缀和做法三. 总结题目给定一个长度为 n 的正整数数列 a1,a2,…,an。初始时,数列中的每个元素要么处于可选状态,要么处于不可选状态。你可以选择一个长度恰好为 k 的区间 [i,i+k−1],使得 ai∼ai+k−1 这 k 个元素的状态全部变为可选。请问,在经过此操作后,所有处于可选状态的元素之和最大是多少。输入格式第一行包含两个整数 n 和 k。第二行包含 n 个整数 ai。第三行包含一个长度为 n 的 01 序列,如果第 i 个数

2021-05-12 20:29:00 137

原创 序列最大收益

文章目录题目一、主要思路二、实现题目给定一个长度为 m 的整数序列 a1,a2,…,am。序列中每个元素的值 ai 均满足 1≤ai≤n。当一个值为 i 的元素和一个值为 j 的元素相邻时,可以产生的收益为 wi,j。现在,我们可以从序列中删除最多 k 个元素,删除一些元素后,原本不相邻的元素可能会变得相邻。序列的收益和为所有相邻元素对产生的收益之和,例如一个长度为 3 的整数序列 1,3,2 的收益和为 w1,3+w3,2。请问,通过利用删除操作,能够得到的序列的最大收益和是多少?输入

2021-05-12 20:16:23 62

原创 字符串的查找的3种方法

字符串的查找的几种方法KMPstrstr()find()KMP#include <iostream>#include <cstring>#include <algorithm>using namespace std;const int N = 1e5 + 10, M = 1e6 + 10;char s[M],p[N];int ne[M];int main(){ int n,m; cin>>n>>p +

2021-04-21 20:05:17 2344

原创 Crossing River 过河问题

Crossing River 一群人过河,只有一条船,可以称作两个人,过河时间由慢的那个人决定,船到达对岸必须有一人在开回来. 现给出每个人的过河时间,求将所有人过河需要的最短时间Sample Input141 2 5 10Sample Output17这时一道贪心题,最优的过河方法有两种:当 n>3时,先将最快和次快的过河,然后最快的划船回来,然后最慢和次慢的过河,最后次快的划船回去,s1 = nums[0] + 2 * nums[1] + nums[n-1]第二种是,最快的

2021-03-19 19:27:45 378

原创 快速排序边界条件的处理及选择

快速排序的核心思想是分治,即将一个序列划分成左部分小于等于x,右部分大于等于x其中设置两个指针i,j(i从左边,j从右边)从两端开始,i遇到大于等于x的停下来,j遇到小于等于x的停下来,然后如果(i<j)就交换q[i],q[j],之后结束循环,递归因为左部分小于等于x,右部分大于等于x,所以递归只有两种情况即sort(l,i-1),sort(i,r);或者 sort(l,j),sort(j+1,r);因为对于i来说,i的左边的值是确定的,一定小于等于x,(因为i在j的右边,j右边的值都是

2021-03-15 08:31:55 915 2

原创 多重背包与分组背包的区别

多重背包分组背包多重背包是每件物品最多选择s个,可以选1,2,3,...分组背包是每组有多个,但是这一组最多选择一个对于多重背包,枚举物品,然后体积(一维倒序)之后决策,选择k个#include<iostream>#include<algorithm>using namespace std;const int N=110;int f[N];int main(){ int n,m; cin>>n>>m;

2021-02-06 15:20:43 448

原创 HDU - 2044一只小蜜蜂 一道递推题

一只小蜜蜂#include<iostream>#include<cstdio>#include<cstring>#include<cmath>#include<queue>#include<map>#include<vector>#include<algorithm>using namespace std;typedef long long LL;const int N=55;LL f

2020-12-04 19:23:53 92

原创 单调栈问题

单调栈能够求得 该数左边离他最近的大于/小于的数(其他问题也可以转换为此问题)例如 求 a[i]左边第一个小于a[i]的数对于a[i]每次入栈如果有大于等于a[i]的数,直接出栈证明:如果求左侧第一个小于a[i]的数如果a[i]入栈后左侧有大于a[i]的数,则那个数不仅是大值而且还出现的比较早,所以他永远不会被用到,所以直接出栈单调栈板子#include<iostream>#include<cstdio>#include<cstring&gt...

2020-12-03 21:11:13 184

原创 滑动窗口的最值问题

滑动窗口滑动窗口的技巧给定一个大小为n≤106n≤106的数组。有一个大小为k的滑动窗口,它从数组的最左边移动到最右边。您只能在窗口中看到k个数字。每次滑动窗口向右移动一个位置。以下是一个例子:该数组为[1 3 -1 -3 5 3 6 7],k为3。窗口位置 最小值 最大值 [1 3 -1] -3 5 3 6 7 -1 3 1 [3 -1 -3] 5 3 6 7 -3 3 1 3 [-1 -3 5] 3 6 7 -3

2020-12-02 20:54:10 384

空空如也

空空如也

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

TA关注的人

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