HHeyanjie
码龄5年
求更新 关注
提问 私信
  • 博客:20,318
    20,318
    总访问量
  • 50
    原创
  • 14
    粉丝
  • 94
    关注
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:浙江省
加入CSDN时间: 2019-12-09

个人简介:抱怨没有用,一切靠自己

博客简介:

HHeyanjie的博客

查看详细资料
个人成就
  • 获得34次点赞
  • 内容获得14次评论
  • 获得44次收藏
创作历程
  • 13篇
    2021年
  • 38篇
    2020年
成就勋章
TA的专栏
  • git
    1篇
  • SpringBoot
    1篇
  • Spring
    1篇
  • 分块
    1篇
  • 题解
    31篇
  • 图像处理
    1篇
  • Java
    3篇
  • 数论
    1篇
  • 模板
    5篇
  • 数据结构
    2篇
  • 并查集
    3篇
  • 图
    4篇
  • 搜索
    2篇
  • 大数模板
    1篇
  • 贪心
    1篇

TA关注的专栏 1

TA关注的收藏夹 0

TA关注的社区 3

TA参与的活动 0

兴趣领域 设置
  • 数据结构与算法
    推荐算法
创作活动更多

新星杯·14天创作挑战营·第9期

这是一个以写作博客为目的的创作活动,旨在鼓励大学生博主们挖掘自己的创作潜能,展现自己的写作才华。如果你是一位热爱写作的、想要展现自己创作才华的小伙伴,那么,快来参加吧!我们一起发掘写作的魅力,书写出属于我们的故事。我们诚挚邀请你们参加为期14天的创作挑战赛! 注: 1、参赛者可以进入活动群进行交流、分享创作心得,互相鼓励与支持(开卷),答疑及活动群请见 https://bbs.csdn.net/topics/619626357 2、文章质量分查询:https://www.csdn.net/qc

472人参与 去参加
  • 最近
  • 文章
  • 专栏
  • 代码仓
  • 资源
  • 收藏
  • 关注/订阅/互动
更多
  • 最近

  • 文章

  • 专栏

  • 代码仓

  • 资源

  • 收藏

  • 关注/订阅/互动

  • 社区

  • 帖子

  • 问答

  • 课程

  • 视频

搜索 取消

SpringBoot常用配置(持续更新)

自动装配原理SpringBoot启动会加载大量的自动配置类xxxAutoConfigurationxxxAutoConfiguration会使用@EnableConfigurationProperties注解绑定配置文件中的属性值给容器中的自动配置类添加组件时,会从xxxProperties类中获取指定的属性值,只需要在配置文件中指定这些属性即可.配置文件中的key和xxxProperties中@ConfigurationProperties注解的prefix属性值一一对应pom.xml
原创
发布博客 2021.11.24 ·
764 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

Spring学习 —— JdbcTemplate操作数据库

JdbcTemplate(概念和准备)1、概念(1)Spring框架对JDBC进行封装,使用JDBCTemplate方便实现对数据库操作2、准备工作(1)引入相关jar包(2)在Spring配置文件配置数据库连接池(3)配置JdbcTemplate对象,注入DataSource(4)创建service类,dao类,在dao注入jdbcTemplate对象①组件扫描②Service③DaoJdbcTemplate操作数据库(添加、修改和删除)添加为例1、对应数据库表创建实体类
原创
发布博客 2021.09.24 ·
487 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

git 上传文件至github仓库

一、下载安装git软件二、配置github用户名和邮箱git config --global user.name "username" //username对应用户名git config --global user.email "email" //email对应邮箱三、在本地项目工程目录打开git bash(也可以通过cd进入本地项目)四、进行文件的上传等操作// 获取git与代码仓库的连接,url对应代码仓库的urlgit remote -u origin url
原创
发布博客 2021.09.15 ·
451 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

数列分块整理..

先分块,把n个数分成根号n个块,每个块根号n个数,(如果不是完全平方数区间个数就+1)num数组记录每个数lef数组维护当前这个数所在区间的左边界rig数组维护当前这个数所在区间的右边界blo数组维护当前这个数属于哪一个块lazy数组维护每个块增加的数思路:修改1.对于每次修改,找到L所在的块和R所在的块2.如果L和R在相邻块或者同一块,直接枚举区间num[i]+C;3.否则,枚举第L和R中间的块,lazy[i]+C,并且枚举L所在的块和R所在的块的num[i]+C;查询第i个数的.
原创
发布博客 2021.07.22 ·
206 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

简易计算器——Java GUI

简易计算器,顾名思义,只能进行一次计算,没有记忆功能自创一个类继承ActionListener,重写actionPerformed(ActionEvent e)方法,实现计算器的功能,getSource()方法返回值是组件对象名,getActionCommand()方法返回值是组件对象的标签。比如一个Button b2 = new JButton(“haha”);e.getSource()返回 b2,e.getActionCommand() 返回haha字符串。import javax.swing
原创
发布博客 2021.03.18 ·
271 阅读 ·
1 点赞 ·
0 评论 ·
2 收藏

JAVA连接数据库(IDEA)

首先先下载MySQL驱动jar包链接: Connector/J.、1、新建完项目之后idea右上角找到jar包的路径就可以了,然后就可以开始写代码了import java.math.BigInteger;import java.util.Calendar;import java.util.Scanner;import java.util.concurrent.CancellationException;import java.sql.*;public class Main {
原创
发布博客 2021.03.17 ·
1026 阅读 ·
1 点赞 ·
0 评论 ·
10 收藏

用Calendar打印日历

package Link_Database;import java.math.BigInteger;import java.util.Calendar;import java.util.Scanner;import java.util.concurrent.CancellationException;public class Main { public static void main(String[] args) { Scanner cin = new Scanner
原创
发布博客 2021.03.17 ·
204 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

图像处理———BMP

简介BMP是英文Bitmap(位图)的简写,它是Windows操作系统中的标准图像文件格式,能够被多种Windows应用程序所支持。结构1、位图文件头(0~13字节)0~1字节 表示文件类型第一个42表示B,第二个4D表示M,bmp格式前两个字节默认是这两个2~5字节 表示文件大小 bytes6~9字节保留字 一般为010~13字节 位图数据的起始位置2、位图信息头(14~53字节)14~17字节 :信息头占用字节数 bytes18~21字节 : 位图的宽度(像素)22~25字节 :
原创
发布博客 2021.03.15 ·
453 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

2021年度训练联盟热身训练赛第一场 —— C

链接: link.题意:给你一个数n,求最小的数x使得x的平方等于n,运算过程中只以个位作为有效数字,比如正常情况4×4=16,在这里4×4=6;正常情况17×17=289,在这里17×17=149.思路:首先写一下乘法竖式。1、首先可以发现,得到的答案的位数一定是一个奇数,而且是x的位数乘2加1,所以答案位数一定是偶数。那么如果n的位数+1是一个奇数,一定找不到x。2、再来看能找的情况,我们假设n有p位,那么x就有k = (p+1)/2位,可以发现通过枚举n的最高位(称它为第1位)可以找到
原创
发布博客 2021.03.10 ·
284 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

关于单调栈...

单调栈:单调递增或单调减的栈,主要通过push和pop两个操作巧妙的解决一些有关序列的问题。===================================================================================放一道题目:牛客链接: link.题意:有n个小于k的数,不改变数组的顺序,求字典序最小的1到k的子序列。#include <bits/stdc++.h>#define ll long long#define T int T;sc
原创
发布博客 2021.03.08 ·
133 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

牛牛的“质因数”

链接: link.思路:在欧拉筛的过程中开个数组处理每个数分解质因数后的乘积,是欧拉筛的应用。欧拉筛链接: link.代码#include <bits/stdc++.h>#define ll long long#define T int T;scanf("%d", &T);while(T--)using namespace std;const int mod = 1e9+7;const int maxn = 4e6+10;ll prim[maxn]; //记录第i个
原创
发布博客 2021.02.04 ·
266 阅读 ·
2 点赞 ·
5 评论 ·
1 收藏

Educational Codeforces Round 102 (Rated for Div. 2) A-D

链接: Educational Codeforces Round 102 (Rated for Div. 2).A题意:输入n,d,有n个数,可以选择互不想等的i,j,k,使得ai=aj+ak。问最终能否使得数组的每个数字都小于等于d思路:求出数组最小的两个数的和,小于d就YES,否则NO代码#include <stdio.h>#include <stdarg.h>#include <stdlib.h>#include <math.h>#in
原创
发布博客 2021.01.15 ·
720 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

Codeforces Round #693 (Div. 3) A-E

链接: Codeforces Round #693 (Div. 3).A题意:有宽度w和长度h,如果w是偶数,可以切成两片,h同理,问能否切成至少n片思路:求出w和h最多切成多少片,最后总片数等于他们的乘积。代码#include <stdio.h>#include <stdarg.h>#include <stdlib.h>#include <math.h>#include <string.h>#include <vecto
原创
发布博客 2021.01.05 ·
299 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

字典树(查找树)入门

字典树树状结构保存字符串,查找快,判断前缀快。又称单词查找树,Trie树,是一种树形结构,是一种哈希树的变种。代码#include <iostream>#include <cstdio>#include <map>#include <set>#include <cmath>#include <queue>#include <stack>// #include <unordered_set>
原创
发布博客 2020.12.06 ·
489 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

Hdu 3974——Assign the task dfs序+线段树

题目: link.题意:公司里有一堆人,然后对于每个人(除了公司老板)每个人都有上属和下属,他们恰好构成一棵树,每当把任务分给某个人时,若他有下属,则他的所有子树全部做这个任务,对于每次查询输出某个节点正在做什么任务。输入有2种操作:1、C x 输入x这个人在做的任务编号 如果没工作输出-12、T x y 让x和x的下属做编号为y的工作思路:先跑一边dfs序,每个节点记录一个in和out表示时间戳,对于每个人p,in[p]到out[p]这段区间就是p的下属,dfs序完了之后用线段树维护每个人的
原创
发布博客 2020.11.05 ·
132 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

线段树 HDU—4027 Can you answer these queries?

链接: link.题意:输入一个n表示n个数,然后输入n个数,输入m表示m个操作,有2种操作:1、0 x y 表示x到y这个区间到数都开根号2、1 x y 求出x到y区间和思路:毫无疑问利用线段树求区间和,但是每次都把一个区间的每个数都开根号就会超时,我们知道一个数一直开根号,到最后一定变为1,所以我们同时记录一下一个区间内的最大值,如果这个区间的最大值是1,那么就不用给这个区间的数开根号,就不用继续往下找,降低时间复杂度。代码:#include <iostream>#incl
原创
发布博客 2020.11.04 ·
101 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

线段树维护最长连续区间 hdu 1540 Tunnel Warfare

链接: link.题意:输入n表示n个城市,输入m表示m个操作,有3中操作:1、D x 表示摧毁第x个城市2、Q x 表示查询包括x村庄的连续的没被摧毁的城市个数3、R 表示修复上一个被摧毁的城市思路:对于每个,1表示城市没被摧毁,0表示摧毁,对于每个区间lmax表示从区间最左边开始的连续城市,rmax表示从区间最右边开始的连续城市数量,maxx表示该区间的最大连续区间。每次摧毁城市的时候,找到那个城市,改为0,然后pushup。pushup函数中当前区间的lmax=左儿子区间的lmax,
原创
发布博客 2020.11.04 ·
174 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

欧拉函数

欧拉函数:就是对于一个正整数n,小于n且和n互质的正整数(包括1)的个数,记作φ(n) 。欧拉函数的通式:φ(n)=n*(1-1/p1)(1-1/p2)(1-1/p3)*(1-1/p4)……(1-1/pn)其中p1, p2…pn为n的所有质因数。φ(1)=1(唯一和1互质的数就是1本身)。我也不知道通式怎么来的,记住吧。单个欧拉函数代码ll oula(ll n){ ll ans = n; for(int i=2; i*i <= n; ++i) { i
原创
发布博客 2020.11.01 ·
422 阅读 ·
0 点赞 ·
2 评论 ·
0 收藏

最短路正反建图

链接: 题目.题意:输入n m x 表示有n个点 m条边 终点是x,要求输出每个点到终点然后回来的最大值。思路:如果正向跑,每个点开始跑一变dij求出每个点到终点距离和终点到每个点距离,肯定会T,所以改变一下思路,存一个正向图和一个反向图,正向图从x点跑一边最短路,可以得出终点到每个点的最短路,反向图也从x点跑一边最短路,因为反向图,所以可以得出每个点到终点的最短路。最后取两个dis相加的最大值。代码#include <iostream>#include <cstdio>
原创
发布博客 2020.10.30 ·
272 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

逆向并查集

题目: 题目.题意:有n个战舰(0~n-1),每个战舰有一个战斗力,然后输入一个m表示m对战舰联合,然后输入一个q表示q次查询。接下来q行有两种输入:1、query x 表示查询和x战舰联合对战舰中攻击力最大的战舰的编号(如果战斗力相同输出小的编号),如果没有就输出-1. 2、destroy x y 破坏x战舰和y战舰的关系,不改变其他战舰关系。知道这题的思路的时候感觉发现了新大陆,太强了。。。思路:如果直接先把m组关系处理完然后正向的操作q次操作,会很难处理destroy的操作,因为既要保持已有的关
原创
发布博客 2020.10.28 ·
352 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏
加载更多