自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 2021年纪

我的2021

2022-01-03 22:35:47 2572

原创 第一周的周记

2021-11-18 周六说实话上一篇文章我是没有想到会有人看到的,没想到xcx学长居然还在下面评论了,真的是又惊又喜的。真的特别崇拜xcx大佬,看过他写的好多博客和代码,看的真的让人很舒服。其实今天晚上我找的很贸然,因为我还没具体想好要问什么,似乎就是抱着单纯聊聊天的想法去的。我想,梳理一下自己有什么问题,其实也不算问题吧,就是思考一些话题,可以和大佬共同探讨。Q:你们平时主要工作是干什么呢,你主要是哪个方向的呢,会不会有经常的加班?Q:你有没有萌生过去读研的想法。Q:你平时下班之后一般会做些什

2021-12-25 22:42:31 208

原创 再一次启航

这是一篇自述。当我看到上一次博客的日期是一年前,我在回想——这一年我在干什么?疫情依旧持续,把美好的世界笼罩在阴霾之下。出门可以不带口罩的日子似乎过去很久了,而且离我们还很远。2017-2021,我呢。我完成了大学四年的学业,与其说完成了学业,不如说我度过了人生中第一个迷茫阶段,第一个成长阶段。但是最起码在校园里,这种迷茫感没有溢出来,而当我踏出校园的那一刻,这种迷茫感涌上心头,我不知道我要到哪去,不知道会落在何处。也许我并不需要现在去考虑这些问题,换个说法也许这并不是我能考虑的出来的。从哪里来,到哪

2021-12-12 22:10:22 243 2

原创 《Git笔记》

前言        之前写过一篇有关Git的博客,但是文章主要内容都集中在两个人如何在github上进行合作开发。有关Git操作没写很多,所以今天好好研究了一下,大体捋了捋Git的使用。从分支管理和版本管理两个方面以及结合平时会用到的一些操作进行记录。       具体Git的安装以及配置在这里就不讲了,本篇主要将本地操作,有关Git安装和配置以及关联远程GitHub仓库详见其他博客。基本准备在准备建仓库的文件夹下,右键

2020-11-28 16:57:06 192

原创 平衡二叉树(AVL)

平衡二叉树首先是一棵二叉排序树二叉排序树:对于每个节点,左孩子比本身小,右孩子比本身大首先我们来实现一个二叉排序树。//节点结构体struct TreeNode{ int val; //节点值 TreeNode* left; TreeNode* right; TreeNode(int val){ //结构体构造方法 this->val = val; this->left=NULL; this->right=NULL; }};然后是二叉排序树的插入算

2020-06-18 17:15:52 731

原创 Java作业 战舰大战游戏

功能简介: 游戏简介:回合制游戏,人机双方在开始游戏前,设置己方战舰在战场上的位置,战舰对地方不可见。游戏开始后,双方轮流进攻战场单位区域,一方先击沉地方战舰为胜利,即游戏结束。 实现方式:以图形用户接口显示一个10*10的放个区域作为战场,程序初始化是,为电脑房随机设置一艘战舰(横竖都可),玩家自行设置战舰位置,开始对战。最终成果:玩家使用鼠标框选一个1*3区域作为己方战舰位置,鼠标点击进行射击,轮流切换进攻权。代码简洁,注释清楚,标注了重...

2020-06-01 16:08:17 863

原创 《程序员的自我修养》读书笔记——一个程序是如何运行起来的一:源代码怎么变成可执行文件

来为你打开新世界的大门

2020-04-11 15:47:44 497

原创 预编译文件

# 1 "hello.c"# 1 "<built-in>"# 1 "<command-line>"# 31 "<command-line>"# 1 "/usr/include/stdc-predef.h" 1 3 4# 32 "<command-line>" 2# 1 "hello.c"# 1 "/usr/include/stdio....

2020-04-10 21:56:10 537

原创 Leetcode 1418 矩阵旋转

[i][j] 顺时针旋转90 [j][n-j-1]每次旋转90度,都涉及到4的位置的移动,需要记录四个位置的变量。上述变换可以等加成[i][j] 水平翻转 [n-i-1][j] 主对角线对折 [j][n-i-1]或者[i][j] 主对角线对折 [j][i] 竖直翻转[j][n-i-1]每次变换只涉及两个值的交换。...

2020-04-07 10:43:46 272

原创 《计算机网络》读书笔记

文章目录概论名词释义、概论名词释义、IP地址:IP地址是表示你在网络上唯一位置的标志,类似于入网通行证MAC地址:MAC地址又叫物理地址,是设备一出厂就刻在网卡上的标志,类似于你的身份证域名:也就是我们常说的网址。一个和IP关联的、易于被人记住的标志。比如没人会记住百度的服务器的ip是什么,我们只需要记住域名是www.baidu.com就行了域名解析:把www.baidu.com解析成...

2020-03-31 22:13:40 603

原创 JAVA 常用使用类及泛型框架基本使用方法

目录常用使用类String类Arrays常用使用类String类函数功能int length()字符串长度boolean equals(String s)判断是否和s内容相同boolean equalsIgnoreCase(String s)忽略大小写,判断和s是否相同boolean startsWith(String s)、endsWith(St...

2020-03-31 15:28:59 236

原创 Git与Github

Git是一个版本分布系统,GItHub是使用Git系统的代码仓库,我们上传到github上的代码会被冰封在北极存放1000年windows是操作系统,接管整个电脑工作。Git接管一个文件夹,记录一个文件夹的增删改。(我的理解)一:Git...

2020-03-06 11:48:36 372

原创 Excel中lookup与vlookup局限性二三事

这里说的局限性并不是指这两个函数的局限性,而是对于刚接触这两个函数的人,会因为使用不当,忽视细节而让函数返回错误值。一:lookup 目前在网上关于lookup使用的方法有两种:一个是:lookup(查找值,查找区域,返回区域);另一个是:lookup(1,0/(查找值=查找列),返回列);第一个就是官方给出的lookup函数的用法,但是使用这种方法需要保证一点:查找区域一...

2020-02-28 22:15:48 2961

原创 后缀数组 代码详解

研究了好几天的后缀数组,今天终于是把代码实现给看明白了了。大多数博客都讲解了了后缀数组以及倍增法,但是对于代码的讲解不是很明白。这篇就把LRJ蓝书上的代码拆开来一句一句的进行解释。关于倍增算法我建议去看lrj的数,写的非常清晰明了;基数排序可以去看看百度百科,其实和桶排序是一家子。代码:char s[maxn];int sa[maxn],t[maxn],t2[maxn],c...

2020-02-16 21:03:37 448

原创 小于n且与n互素的整数个数:

推导过程略欧拉公式:n(1-1/p1)(1-1/p2)....代码仅供参考:void euler_phi(int n){ int m=(int)sqrt(n+0.5); int ans=n; for(int i=2;i<=n;i++){ if(n%i==0){ ans=ans/i*(i-1); while(n%i==0) n/=i; } } i...

2020-01-21 22:12:01 1365

原创 约数的个数

给出n的唯一分解式:n=分解式的解释:pi均为素数,例如20 的分解式为20=n的约数的个数为:(a1+1)*(a2+1).....代码仅供参考:int fun(int n){ int ans=1; for(int i=2;i*i<=n;i++){ if(n%i==0){ int temp=0; while(n%i==0){ temp++; ...

2020-01-21 21:51:18 237

原创 linux 进程通讯消息队列结构体问题

linux使用消息队列进行进程通信,其中使用到了消息队列结构体规范定义:struct msgbuf{ long msgtype; char msgtext[1024];} msgtype:消息类型msgtext:消息内容两个变量不可以颠倒,因为读取消息队列时,读取第一个long长度为消息类型。如果想传递的不是一个char[]的消息,...

2019-11-25 15:20:54 1296

原创 素数筛法

筛选n之内的所有素数void Prime(int n){ //素数筛法 memset(isPrime,1,sizeof(isPrime)); int m=sqrt(n+0.5); for(int i=2;i<=m;i++){ if(isPrime[i]) for(int j=i*i;j<=n;j+=i){ isPrime[j]=0; } } }...

2019-11-12 16:56:45 343

原创 算法设计——连续邮资问题

经历了一周考试周,好久没写代码了。题目:假设国家发行了n种不同面值的邮票,并且规定每张信封上最多只允许贴m张邮票。连续邮资问题要求对于给定的n和m的值,给出邮票面值的最佳设计,在1张信封上可贴出从邮资1开始,增量为1的最大连续邮资区间。例如,当n=5和m=4时,面值为(1,3,11,15,32)的5种邮票可以贴出邮资的最大连续邮资区间是1到70。 思路:搜索结点的状态应该是已经确...

2019-06-23 23:56:28 2171

原创 编译原理实验 语法分析 树状语法树输出

所有的源码都放GitHub了:https://github.com/yuyi5453/Compilation-principle成品图:源码#include<bits/stdc++.h>#include"DSJ_词法分析.h"using namespace std;const int max_len=11;char token[20],token1[40...

2019-05-31 21:33:54 7222 3

原创 编译原理 TEST语言语法分析+输出语法树 C/C++

所有的源码都放GitHub了:https://github.com/yuyi5453/Compilation-principle语法树是递进形式,至于树的形式再想想,不太好写。版本一是函数调用的的时候直接输出的,版本二是建了棵树。至于老师说的栈什么的没太听清楚。词法分析当成头文件用了。拿set处理了未声明和重复声明。其他的还没写(两个版本都有一个隐藏的的小bug,希望老师...

2019-05-29 23:32:03 5644 8

原创 算法设计作业 多边形游戏 动态规划

给定N个顶点的多边形,每个顶点标有一个整数,每条边上标有+(加)或是×(乘)号,并且N条边按照顺时针依次编号为1~N。下图给出了一个N=4个顶点的多边形。游戏规则 :(1) 首先,移走一条边。 (2) 然后进行下面的操作: 选中一条边E,该边有两个相邻的顶点,不妨称为V1和V2。对V1和V2顶点所标的整数按照E上所标运算符号(+或是×)进行运算,得到一个整数;用该整数标注一个新顶点,...

2019-05-25 23:08:41 1620

原创 5.14每日鲜例题(一)UVA 11624 BFS

一个稍微复杂一点的搜索首先预处理每个格子起火的时间,J进行转移的时候加上下一个格子在下一时刻是否会着火或是否已经着火的判断即可#include<bits/stdc++.h>using namespace std;const int maxn=1005;char e[maxn][maxn];int t[maxn][maxn];bool book[maxn][maxn]...

2019-05-14 23:12:25 230

原创 网络流 EK Dinic算法模板 最大流最小割定理

先把两个模板挂上,然后有时间回来网络流详解写一下,相信大多数刚开始接触网络流的同学也是没大看懂LRJ那本紫书上的讲解,我也是各种查百度,看博客,翻离散,去b站然后弄得明白了一些,不写一下可惜了,周末一定写,先让我理理思路。Edmonds-Karp算法:时间中一般不用这个算法,因为时间复杂度较大struct EdmondsKarp{ struct Edge{ int from,...

2019-04-24 14:36:35 305

原创 2019第十届蓝桥杯C/C++语言A组题目及解析

这个题解是按照我自己的思路来的,没有特别多的测试数据,也没有官方正确的题解,若有错误望大佬指正。 A:平方和【问题描述】 小明对数位中含有 2、0、1、9 的数字很感兴趣,在 1 到 40 中这样的数包括 1、2、9、10 至 32、39 和 40,共 28 个,他们的和是 574,平方和是 14362。注意,平方和是指将每个数分别平方后求和。请问,在 1 到 2...

2019-03-28 09:31:54 32633 22

原创 UVA 11491 Erasing and Winning

这个题是我这么好久以来第一个一遍过的题目了,我哭了。。。一个思路不是很清晰,正确性自己不是很敢确定的算法,写出来居然一遍过了。而且只用了40ms,O(N)的复杂度。首先这个题目的方法就是单调队列。一个递减的单调队列。但是这个递减队列不能对所有数进行构造,如果最后有一个数特别大会将前面的都出队。假设m=n-d;为结果的长度。我们舍下最后m-1个数不管,先看前面d+1个数,对前面这些书进...

2019-03-07 23:26:23 221

原创 UVA 1610 Party Games

题目的意思还是很容易理解的,代码也很容易些,但是细节很多,如果屡不清就会错了也不知道在哪错的。我开始的想法就是,对于n的字符串,如果第i个字母都相同就直接输出,如果不同就输出排序后的第n/2-1串的第i个字符。这么写仅仅几个样例能过。正确的算法是。将n个字符串排序,直接使用sort即可。然后a为第n/2个字符串,b为第n/2+1个,那么要输出的字符串就介于a,b之间。对于第i个...

2019-03-07 13:27:56 179

原创 UVA 714 Coping Books 二分+贪心

二分查找最小的最大值,然后贪心划分区间题解:x为划分的各个区间之和的最大值,那么x在[min,max]中,min为序列中的最小值(0也行,用最小值可以稍微减少二分的时间,),max为序列之和。函数P(x)表示当子序列最大值为x时,能至少划分出的区间个数,即每次尽量向右划。如果划完整个序列之后区间数&lt;=K,那么x一定大于等于答案,如果区间数大于K,那么x一定取偏大了。不同情况进行二分,...

2019-03-05 10:33:19 243

原创 National Property CodeForces - 876E

这个题我队友写的,他正好写了题解就直接挂他的啦:https://blog.csdn.net/qq_41707809/article/details/88095112

2019-03-03 22:49:59 278

原创 codeforce Sorting the Coins

其实这个题看明白了挺简单的。题目大意: 给你n个不流通的硬币,然后每次替换其中一个,每替换一个就询问一次按照Dima的算法需要几次才能最终没有可以相互交换的coin。每次替换之后,按照Dima的算法执行时,coin的顺序是不变的,因为题目中说了DIma只可以在心中想,不可以移动coin。题解:首先要想明白每次执行Dima的算法都会把一个不流通的coin移动到最后面,所以题目就变成了每次...

2019-03-03 18:49:43 254

原创 codeforces Trip For Meal

周末两天和队友打了三场CF,div2,手感相当不错,前几个提案都能很快的想出思路来,今天六个题A了四个第五个超时了六分钟,主要是英语不过关。Trip for Meal。题解:如果a是最小的,那么这人就在A和C之前来回走动吃饭b同理,c最小那么就通过a,b中最小的那个,然后去C 和 T家来回吃饭注意当n==0,输出0#include&lt;iostream&gt;#inclu...

2019-03-03 18:26:53 391

原创 UVA11572

题解:设置左右端点 l,r=0,当a[r]不在[l,r]区间是,r++;否则 l++,知道a[r]不在其区间中。[l,r]区间中的元素可以用set进行判重和删除操作#include&lt;bits/stdc++.h&gt;using namespace std;const int maxn=1e7;int a[maxn];int main(){ int t,n; cin&...

2019-03-01 22:27:54 181

原创 UVA11054

题解:假设 村庄1的酒需求为a(可能正可能负,代表买酒或卖酒),这里无须在意a的正负。假设 2 村庄给 1村 a个酒人力就是a,那么2村庄的酒需求现在则为 b+a; 然后村庄3以此类推#include&lt;bits/stdc++.h&gt;using namespace std;int main(){ int a,last=0,n; while(cin&gt;&gt;n &a...

2019-03-01 22:19:15 242

原创 CF-1130B Two Cakes

用dp。f[i]表示拿完 第i个tier是的最小的步数状态转移方程见代码里#include&lt;iostream&gt;#include&lt;vector&gt;#include&lt;math.h&gt;using namespace std;const int maxn=1e5+5;vector&lt;int&gt;G[maxn&lt;&lt;1];long lo...

2019-03-01 22:04:37 323

原创 CF-1130A Be Positive

这个题果真吓到我了#include&lt;iostream&gt;using namespace std;int main(){ int x=0,y=0; int t,a[105]; cin&gt;&gt;t; for(int i=0;i&lt;t;i++){ scanf("%d",&amp;a[i]); if(a[i]&gt;0) x++; if(a[i]&lt;...

2019-03-01 22:01:28 277

原创 HDU-3415 单调队列

首先单调队列就是具有单调性的队列。。。算了不废话了,关于单调队列这里有一个对于初学者来说简单明了的博客:链接具体步骤: 若队列为空,将A[i]从队尾入队 若队列不为空,将比A[i]大的元素都从队尾弹出,然后把A[i]入队 若队列不为空且A[i]大于队尾,则直接从队尾把A[i]入队if(q.empty()) q.push_back(A[i]);else if...

2019-03-01 12:29:05 426

原创 快速排序的两种写法

#include&lt;bits/stdc++.h&gt;using namespace std;void quick_sort(int* A,int l,int r){ if(l&gt;=r) return; int s=A[l],p=l,q=r; while(p&lt;q){ while(p&lt;q&amp;&amp;s&lt;=A[q]) q--; A[p]=A[q]...

2019-02-27 15:09:20 194

原创 UVA11212 Editing a book 启发式迭代加深搜索IDA*算法

题目链接:https://vjudge.net/problem/UVA-11212迭代加深搜:对于可以用深搜但是解答树的深度没有明显上限的题目,可以用迭代深搜,设置一个解答树深度的上限maxd启发式:写一个估值函数h(),预测到目标状态还要多深,当cur+h()&gt;maxd时剪枝。也是刚学还不是很明白,先上题目代码。#include&lt;bits/stdc++.h&gt;...

2019-02-24 10:59:29 306

原创 已知三角形三个顶点求内切圆和外接圆半径 以及面积 C语言模板

自己找的公式然后写的,比较低级,希望能有大佬看到能指点我一下有什么更高级的公式。感激不尽!double Length(int x1,int y1,int x2,int y2){ return (double)sqrt(pow(x1-x2,2)+pow(y1-y2,2));} double a=Length(x1,y1,x2,y2);double b=Length(x2,...

2019-02-01 23:16:30 3569

原创 getline()、cin.get()、cin.getline()等函数及读取整行数组或空串有效

有的时候题目会要求一次性读取一整行数据,或者输入的一行数据的个数并不清楚。举个栗子:求一行数的和 样例1: 1 2 3 4 样例2:2 8 9 5 4 3 4就像这种要求,你并不知道题目的输入数据个数是多少,使用字符串输入也是不行的,因为空格是字符串的结束标志,并不能读入一整行。再举个栗子:统计字符串的长度,...

2019-01-21 20:52:52 826

空空如也

空空如也

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

TA关注的人

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