自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 算法问题基础

算法的特性:输入,输出,确定性,能行性,有穷性。如果去除有穷性称计算方法。递归方法:递归主要是通过系统栈来实现的,很多计算工作是重复的所以比较耗时。#include<bits/stdc++.h>using namespace std;long fid(int n){ if(n<=1) return n; else return fid(n-1)+fid(n-2); } int main() { int n; cin>>n; cout&lt

2020-08-13 10:33:31 139

原创 分治

马上要期末考试了,来写点博客吃吃吧,哦不学学吧分治法的三点:1.原问题能够分解成为若干个规模小,相互独立,与原问题类型相同的子问题。2.子问题足够小可以解决3.能够将子问题的解组合成原问题的解。算法分析:时间复杂度的递推公式为T(n)=aT(n/b)+cn^k;T(1)=c;有待补充!分治法求最大元最小元问题...

2020-08-09 09:33:17 168

原创 线段树进阶

在上一篇博客中,我们虽然是已经解决了基本的区间修改问题,但是,在不断刷题的过程中,可以看出基础的区间修改是很容易tle的,下面就介绍 其他的线段树有关问题。pushdown–下传懒惰标记用于整个区间的修改pushdown的原理大概就是将所需要加的值先存在他的父亲里,然后需要查询其父亲的值,进行加法计算。这样就省去了每次都遍历一遍加值的过程。...

2020-07-30 15:24:14 141

原创 线段树初级

今天做到一题是线段树题,在此补充一下我自己缺失的知识点首先介绍一个写的贼好的博客https://oi-wiki.org/ds/seg/准备每天看一篇,每天增加一个小的知识点。今天是线段树首先是建树的过程,因为鄙人画图技术有限,所以大家还是参考那个博客的讲解吧,这里主要是一些代码void buildTree(int l,int r,int n){ if(l==r){ b[n]=value; return ;} int m=(l+r)/2; buildTree(l,m,n<&l

2020-07-27 11:38:23 97

原创 攻防世界Guess the Number

2020.7.21-1首先这道题 说实话,只是考验的代码能力这道题的难点在于:拿到java后不知道怎么办首先对于java程序,要进行反编译,可以利用插件,或者是DJ java discompiler.将java进行反编译,在反编译之后,我们会得到一个原始代码import java.io.PrintStream;import java.math.BigInteger;public class Gues{ public Gues() { } static S

2020-07-21 11:00:02 472

原创 oil deposite

我觉得代码真的是越写理解越透彻,所以继续刷题吧。https://vjudge.net/problem/HDU-1241呐,传送门!这个题可以称之为,深度搜索的一个最基础的例子#include<iostream>#include<cmath>#include<cstdio>#include<cstring>#include<algorithm> using namespace std;bool visited[100][100

2020-07-13 11:13:05 185

原创 dmd-50

因为之前没有看到过md5加密,所以做这个题目有一丝丝的困难,因此在看了wp后,发现还是满简单的,在这里插入代码片int __cdecl main(int argc, const char **argv, const char **envp){ __int64 v3; // rax __int64 v4; // rax __int64 v5; // rax __int64 v6; // rax __int64 v7; // rax __int64 v8; // rax __in

2020-07-09 09:25:14 394

原创 背包九讲的深入理解

01背包问题:简述:有N件物品,容量为V的背包,每一件物品的容量为c[i] 价值为 w[i] 问如何装物品 才能使在不超过背包容量的前提下,价值最大。计:dp[i][j]表示最大装i个物品,此时背包的内存为j时的价值大小,很显然,j<=v;dp[i][j]=max(dp[i-1][j],dp[i-1][j-c[i]]+w[i])这个转移方程的意思就是如果第i个物品放入背包中时,那么...

2020-04-29 11:46:24 113

原创 hackme ctf-re

hackme总结:首先得到反编译的代码就很简单:__int64 sub_400F8E(){ char v1[136]; // [rsp+10h] [rbp-B0h] int v2; // [rsp+98h] [rbp-28h] char v3; // [rsp+9Fh] [rbp-21h] int v4; // [rsp+A0h] [rbp-20h] unsigned _...

2020-04-26 09:14:24 347

原创 dp专场(4)补题

题目大意:输入一个序列,两只兔子分别顺时针、逆时针走,同一时刻它们到的石头上的数值要相同,最多只能走一圈。求走过的最多步数。其实就是dp求最长回文子序列的问题dp转移方程:状态转移:dp(i,j)=max(dp(i+1,j),dp(i,j-1));表示从i到j的最长非连续回文子序列。上代码:#include<bits/stdc++.h> using namespace std...

2020-04-23 17:49:01 86

原创 攻防世界(新手区最后一题)maze

拿到这个题 //我瞬间想到了游戏通关的那个题目因此会进行两个题目比较写一下:首先是maze:maze这题进去之后发现是一个迷宫根据反编译结果:可以看出这是一个二维8x8数组表示,我们要输入的就是0 . O o这四个字符 然后根据提示就是从(0.0)这个位置走到最后的‘#’键这个位置。这四个函数的分别对应的函数可以看出他的作用,因此就可以走到#键。迷宫问题有点难哇!...

2020-03-26 18:15:45 182

原创 java学习日志#day1

java是面向对象的语言,基本单位为一个关键词classday1:java入门1.记录一下eclipse的使用方法//虽然我不用这个https://www.liaoxuefeng.com/wiki/1252599548343744/12558838183981442.命名规则1)开头必须是英文单词,后面跟字母 数字 下划线2)开头最好是大写3)程序命名规则:Java入口程序规定的...

2020-03-24 18:23:19 94

原创 java学习日志#day2

继续学习:1.整数运算:java中整数的加法与c语言中一模一样//在此不多介绍了。写法也都一样1)左移,右移:其中需要学习的是"<<"左移和”>>“右移(适用于二进制)左移在数据最后补0,右移如果是正数则补0,不然补1“>>>“无符号的右移这时候符号位就会发生改变其实左移就是不是就是不断乘以2,右移不断除22)位运算首先与,或,非,异或,同...

2020-03-24 18:22:51 72

原创 虚拟机的使用过程(一把辛酸泪)

不拖延:11:00交稿作为一个刚刚开始用虚拟机的小白 虚拟机的安装和使用整整脱了我一个月整理一下遇到的问题,以免下次忘记第一个坎://因为图片上不上去,因此我就手打了unable to find a live medium…类似于这个原因:我的镜像坏了解决:重新下载一个记住要设置CD/DVD链接状态,将镜像文件地址附上链接状态。第二个坎,联网原因:联网状态出现错误解决办法:使...

2020-03-23 10:57:21 140

原创 2020年字符串专题训练赛05

F题:补了这一题真的是对字典树一个更加深刻的理解,//以后看见异或就要想到字典树啦!题解:本题就是找一个求出与这n个数异或后结果的最大值,这些最大值的最小值建完字典树后,取0,往1去找最大值,取1,往0去找最大值//根据异或的性质所找到的。具体实现代码如下#include <bits/stdc++.h>#define int long longusing namespac...

2020-03-22 18:19:39 270

原创 2020年字符串专题训练赛04

字符串dp部分:具体字符串dp部分请看我另一篇博客。H题:easy problem//一般这样的都不是很easy看了一下题目。。。确实很easy//呸!给你一串有权值的字符串,你可以删除某些字符串使它不含子序列hard,求使所删除的字符权值最小的情况。这个题目 我刚一拿到以为是。。hash然后写不出来自闭了,看了题解后发现是字符串dp 。具体实现方法:1.找出具体的转移方程借了大神的...

2020-03-19 17:58:48 89

原创 2020年字符串专题训练赛04

这期主要是字符串hash和字符串dp选D题的原因主要是想再复习一下二维hash详细请看我的另一篇博客!D题(Matrix Matcher)这是二维字符串hash的典型板子题目。题目大意:在二维的一个字符串内 查找给定串出现了多少次既然是板子 就不多说啦#include<iostream>#include<cmath>#include<cstring&...

2020-03-19 17:45:34 108

原创 2020年字符串专题训练赛03

I:Prefixes and Suffixes题目大意:给一个串,找到这样的子串:它既是这个母串的前缀,又是这个母串的后缀。统计这样的串的个数,长度和在母串中总共的出现次数。前后缀问题一般都是kmp问题因此我们会去考虑用kmp的next数组解决问题//这个题我以前做过,然后比赛的时候没看到这个题gg附上代码#include<bits/stdc++.h>using name...

2020-03-15 18:18:33 95

原创 2020年字符串专题训练赛03

D:魔咒词典题目大意:每一个单词都对应着一个功能,当哈里说出这个魔咒时,你必须可以给出响应的功能,如果没有则输出“what?”刚开始看到题目,就想到了字典树的方言翻译那个板子题但是仔细思考了一下,会不会写map更容易但是写完交完就。。。[图片]因为如果字符串很长的话,就会超内存因次训练的时候就gg了看了题解后发现hash+二分的方法非常有用因此就自己写了一遍,确实是有点麻烦#i...

2020-03-15 17:36:20 122

原创 2020年字符串专题训练赛02

H:restoring the expression考察知识点:字符串hash题目大意:一个串是否能将他分割成a+b=c的形式(首位不能是0,个位数字不算)方法一:暴力枚举,分情况讨论,事实证明是可行的,但是由于分类过于复杂,很难统一完成,因此,不推荐方法二:hash //当我看其他人的博客讲说hash时,黑人问号脸。不得不在这感叹hash的作用真的大需要了解hash的几个公式. H...

2020-03-12 17:59:15 210

原创 2020年字符串专题训练赛02

E:martian strings题目大意:这题主要的想法就是给一个m,输入m个字符串,在主串中是否能找到与不连续的子串使其匹配。1.思路一:刚一开始,我用队列写的附上代码`#include<iostream>#include<cstdio>#include<cstring>#include<string>#include<cm...

2020-03-12 17:20:53 104

原创 2020年字符串专题训练赛01

首先是重点题G题:反思:1.G题没做出来的直接原因是没看懂题,2.想尝试用hash做但是没成功//是我太菜了。 题目大意:求s中与m匹配之后还能空缺的可以进行填补的个数 比如说第一个样例:如图所示 刚开始思路就是看两个串之间有没有相交的部分 分类如下:1.有相交部分,若有,如果是前缀则没有空位,如果不是则输出0. 2.若没有相...

2020-03-08 18:14:30 137

空空如也

空空如也

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

TA关注的人

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