自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Ampty36的博客

我,没啥意思

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

原创 个人网站踩点

方便交流:http://duwx9m.coding-pages.com

2020-11-01 08:41:04 225

原创 初级数据结构-目录

初级数据结构-目录线性数据结构树形数据结构树形数据结构(2)线性数据结构2019-08-12普通队列(施工中)单调队列(施工中)优先队列(施工中)栈(施工中)单调栈(施工中)树形数据结构2019-08-13二叉树(施工中)完全二叉树(施工中)满二叉树(施工中)树形数据结构(2)2019-08-14并查集(施工中)带权并查集(施工中)种类并查集(施工中)...

2020-10-07 09:06:24 232

原创 回归改进1

有什么改进,我方便更改欢迎评论交流

2022-04-23 15:36:31 361

原创 DNS测速最优

DNS影响网速快慢,因此,我们在选择DNS的时候要先测网速。如何测DNS的快慢,最简单的方法用命令提示符如图所示,ping+DNS代号(PING与DNS代号之间有空格)C:\Users\?>ping 119.29.29.29正在 Ping 119.29.29.29 具有 32 字节的数据:来自 119.29.29.29 的回复: 字节=32 时间=294ms TTL=51来自 119.29.29.29 的回复: 字节=32 时间=63ms TTL=51来自 119.29.29.29

2021-09-20 19:54:08 13164

原创 Test(5)

T1:互不攻击的炮(canon.cpp/in/out 1s 128M)在一个 N 行 M 列的棋盘上,让你放若干个炮(可以是 0 个),使得没有一个炮可以攻击到另一个炮,请问有多少种放置方法。大家肯定很清楚,在中国象棋中炮的行走方式是:一个炮攻击到另一个炮,当且仅当它们在同一行或同一列中,且它们之间恰好有一个棋子。你也来和小可可一起锻炼一下思维吧!输入一行包含两个整数 N,M,之间由一个空格隔开。 N 和 M 均不超过 6输出总共的方案数,由于该值可能很大,只需给出方案数模 9999973

2020-11-01 10:37:51 443

原创 使用DEV-C++终止程序进程

御用头文件:#include<windows.h>这里可以用一种程序来终止某个程序的进程,以chrome举例,效果如下:接下来你的CHOREM就会自动关闭了。代码: system("taskkill /f /im chrome.exe");注意后面的chrome.exe在任务管理器里面找到,先打开任务管理器,然后找到你要执行的程序:如:这里选择第四个,然后点击右键,会提示转到进程,接下来会进行提示:如图中选中的文件,点击右键,再点击“属性”,如下:看到文件类型,.

2020-11-01 10:35:41 2884

原创 战地模拟器下载

战地模拟器:《战地模拟器(Ravenfield)》是一款非常好玩的战争模拟游戏,游戏玩法简单轻松,就像战地一样,游戏主要是以占领据点,击败对手来获得胜利。链接: https://pan.baidu.com/s/1o7wBBcsRgjgGBpz8eFn6XQ提取码: vqzs...

2020-11-01 09:43:56 1495

原创 题解-动态第K小问题

描述输入第一行给出一个数字T,代表T组数据 第二个先给出N,代表数列中有多少个数字,再给出M,代表M个询问。 N,M<=30000 第三行给出N个数字 第四行给出M个数字,b1,b2…bm,保证升序。 代表依次询问前b1中数字中第1小的数字是多少,前b2个数字中第2小的数字是多少,前b3个数字中第3小的数字是多少输出针对每个询问,输出结果。样例输入复制17 41 3 2 4 5 9 82 3 4 5输出复制1234末尾几行是对输出格式的一个转换,记住要加上那个:

2020-10-25 10:59:33 142

原创 Test(4)

T1:栈排序2(stack.cpp/in/out 1s 256M)在上个题中,JJ发明了一种利用栈进行排序的方法。例如,当数组中的元素为1,3,2时,我们可以利用栈对其进行排序:1入栈;3入栈;3出栈;2入栈;2出栈;1出栈。在这个例子中,出栈序列是3,2,1,因而实现了对数组的排序。遗憾的是,在不打乱入栈顺序的前提下,有时仅仅 借助一个栈是不能实现对数组的完全排序。例如给定数组2,1,3,借助一个栈,能获得的字典序最大的出栈序列是3,1,2。(2入栈;1入栈;3入栈;3出栈;1出栈;2出栈)现请你借助

2020-10-25 09:34:05 324

原创 代码-WIN10应用商店运行慢解决方法

打开cmd程序,然后输入以下代码:$manifest = (Get-AppxPackage Microsoft.WindowsStore).InstallLocation + '\AppxManifest.xml' ; Add-AppxPackage -DisableDevelopmentMode -Register $manifest

2020-10-25 09:32:46 660

原创 题解-稀疏图判定

稀疏图判定标题描述输入一个有向图,判断这个图是不是一个稀疏图。这里我们定义,如果一个图的边数小于等于点数的 10 倍,我们称这个图为稀疏图,否则,这个图是稠密图。输入输入第一行一个整数 n(1 <= n <= 100) 表示图的点数。接下里 n 行,每行输入 n 个 0 或者 1 的整数,表示这个图的邻接矩阵。注意,可能存在自环,但是不算边数。输出如果输入的图是一个稀疏图,输出"Yes",否则输出"No"。输入样例 150 0 1 1 01 0 1 0 01 1 0

2020-10-18 12:47:07 497

原创 题解-完全图判定

描述输入一个无向图,判断这个图是不是一个完全图。输入输入第一行两个整数 n(1 <= n <= 100) 和 m(1 <= m <= 20000),表示输入点数和边数。接下来 m 行,每行输入两个整数 u, v(1 <= u, v <= n),表示 u 和 v 之前有一条无向边。输入中不存在自己到自己的边,但是可能会有重复的边。输出如果输入的图是一个完全图,输出"Yes",否则输出"No"。输入样例 13 31 22 33 1输出样例 1Yes

2020-10-18 12:40:45 675

原创 十进制转八进制C++做法

描述:把任一给定的十进制正整数转换成八进制数输出。方法一:指针#include <bits/stdc++.h>using namespace std;int main(){ int d; vector<int> vec; cin>>d; while (d) { vec.push_back(d%8); d=d/8; } for(vector<int>::iterator ip=vec.end()-1;ip>=vec

2020-10-18 12:28:18 4008 1

原创 题解-最优连通子集

描述众所周知,我们可以通过直角坐标系把平面上的任何一个点P用一个有序数对(x, y)来唯一表示,如果x, y都是整数,我们就把点P称为整点,否则点P称为非整点。我们把平面上所有整点构成的集合记为W。定义1 两个整点P1(x1, y1), P2(x2, y2),若|x1-x2| + |y1-y2| = 1,则称P1, P2相邻,记作P1~P2,否则称P1, P2不相邻。定义 2 设点集S是W的一个有限子集,即S = {P1, P2,…, Pn}(n >= 1),其中Pi(1 <= i <

2020-10-18 11:03:21 278

原创 题解-[Usaco2012 Feb]Cow Cotillion

描述每年春天,奶牛们会举行一个盛大的舞会。舞会上公牛(表示为">")和母牛(表示为"<")相互鞠躬以后开始舞蹈。原则上,一对相互鞠躬的牛表示为:"><"。有时候,另一对牛会处在一对相互鞠躬的牛中间:"> >< <"。事实上,有些时候舞厅会有非常多的牛会混杂在一起:"> >< < ><"。会比上面的例子更复杂一点(右侧又多加了一对相互鞠躬的牛)。如下是一个更复杂但合法的安排:< < >

2020-10-08 09:28:27 136

原创 题解-出栈序列统计

描述栈是常用的一种数据结构,有n令元素在栈顶端一侧等待进栈,栈顶端另一侧是出栈序列。你已经知道栈的操作有两·种:push和pop,前者是将一个元素进栈,后者是将栈顶元素弹出。现在要使用这两种操作,由一个操作序列可以得到一系列的输出序列。请你编程求出对于给定的n,计算并输出由操作数序列1,2,…,n,经过一系列操作可能得到的输出序列总数。输入一个整数n(1<=n<=15)输出一个整数,即可能输出序列的总数目。样例输入3输出5这道题n<=15,那么我猜你的第一想法肯定是

2020-10-08 09:26:28 551

原创 题解-表达式括号匹配

描述假设一个表达式有英文字母(小写)、运算符(+,—,*,/)和左右小(圆)括号构成,以“@”作为表达式的结 束符。请编写一个程序检查表达式中的左右圆括号是否匹配,若匹配,则返回“YES”;否则返回“NO”。假设表 达式长度小于255,左圆括号少于20个。输入包括一行数据,即表达式输出包括一行,即“YES”或“NO”样例输入2*(x+y)/(1-x)@输出YES这道题很明显就是用栈来做,我们来分析一下:只要遇到“)”的“(”他们就可以互相抵消,所以我们遇到"("就加一次,“)”就

2020-10-08 09:21:09 3561 4

原创 排序算法:归并排序(Merge Sort)

归并排序归并排序采用了分治策略(divide-and-conquer),就是将原问题分解为一些规模较小的相似子问题,然后递归解决这些子问题,最后合并其结果作为原问题的解。归并排序将排序数组A[1…n]分成两个各含n/2个元素的子序列,然后对这个两个子序列进行递归排序,最后将这两个已排序的子序列进行合并,即得到最终排好序的序列:**归并排序的时间复杂度为:O(nlgn),其中 MERGE(a,b,c,d)的时间复杂度为O(n)。**如果这二组组内的数据都是有序的,那么就可以很方便的将这二组数据进行排序

2020-10-08 08:58:55 299

原创 排序算法:冒泡排序(Bubble Sort)

冒泡排序算法原理冒泡排序的原理是每次从头开始依次比较相邻的两个元素,如果后面一个元素比前一个要大,说明顺序不对,则将它们交换,本次循环完毕之后再次从头开始扫描,直到某次扫描中没有元素交换,说明每个元素都不比它后面的元素大,至此排序完成。时间复杂度冒泡排序的时间复杂度为O(N)。初始状态是排好序的的,一趟扫描即可完成排序。所需的关键字比较次数X和记录移动次数 Y均达到最小值(Xmin = n-1、Ymin = 0)冒泡排序总的平均时间复杂度为O(N^2)。若初始文件是反序的,需要进行N趟

2020-10-08 08:56:14 627

原创 Gena

Gena是一款代码编译测试的程序,功能多。当然Lemon也不错,但是没有Gena方便。网盘下载地址链接:https://pan.baidu.com/s/1gt8ss5-wkLCowashc94Tyg提取码:v6g9

2020-10-07 20:03:00 35

原创 【题解】矩阵合并

目录题目描述题解题目描述矩阵合并在学习线段代数时的一个内容, 它可以将一个A行B列的矩阵与一个B行C列的矩阵进行合并,合并的代价为ABC.注意第一个矩阵的列数必须与第二个矩阵的行数相等,只有这样才能合并。现在给 出N个矩阵,希望你将它们最终成一个矩阵,并希望合并的总代价越小越好。(总代价就是每次合并的代价的总和)输入第一行给出一个数字N.(N<=100)下面N行,每行两个数...

2020-10-07 20:02:00 42

原创 【题解】负进制

负进制借助于对数字理论的研究,奶牛们打算建立一套计数系统。它们打算建立的计数系统是二进制的,但基数为-2,而不是+2。另它们非常高兴的是,使用-2作为基数表示数字不需要符号位。我们知道进制数每位的权(从右到左)分别为1(基数的0次方),基数1,基数2,等等。基数为-2的情况下,每位的权分别为1,-2,4,-8,16,-32,……(从右向左)。因此,从1开始计数依次为:1, 110, 111, ...

2020-10-07 19:48:00 34

原创 【题解】约瑟夫问题

题目描述nn 个人围成一圈,从第一个人开始报数,数到 mm 的人出列,再由下一个人重新从 11 开始报数,数到 mm 的人再出圈,依次类推,直到所有的人都出圈,请输出依次出圈人的编号。输入格式输入两个整数 n,mn,m。输出格式输出一行 nn 个整数,按顺序输出每个出圈人的编号。输入输出样例输入 #110 3输出 #13 6 9 2 7 1 8 5 10 4说明/提示1 \le m, n...

2020-10-07 19:46:00 27

原创 【题解】删数问题加强版

描述键盘输入一个高精度的正整数N,去掉其中任意M个数字后剩下的数字按原左右次序将组成一个新的正整数。编程对给定的N和M寻找一种方案使得剩下的数字组成的新数最小。输出组成的新的正整数。 输入数据均不需判错。如果去掉了某几个位后得到的新整数开头为0,保留0。输入第一行为高精度正整数N(N的长度不超过10^6位) 第二行为M(0<=M<=N的长度)输出去掉M位后的最小新数。样例输入...

2020-10-07 19:45:00 47

原创 C/的图片库(2)

2020-10-07 19:43:00 20

原创 C/的图片库(1)

这里是我收集的关于C的图片。希望你会喜欢。

2020-10-07 19:38:00 25

原创 C/的常用位运算符

双目运算符位逻辑运算符有6种位运算:& 与运算 | 或运算 ^ 异或运算 ! 非运算(求补) >> 右移运算 << 左移运算与运算(&)双目运算。二个位都置位(等于1)时,结果等于1,其它的结果都等于0。...

2020-10-07 19:31:00 22

原创 Code Test(2)

1110testT1:Inversion逆序数对1(inversion.cpp/in/out 1s 256M)给定N的值,要求找出一个N的全排列,这个全排列中,逆序数有M对。这样的结果会存在多个解,现在请输出字典序最小的那个解。例如当输入3 1 时,则1 3 2这个排列有一个逆序对,2 1 3这个排列同样也有一个逆序对。但1 3 2这个字典序更小,因而其是正解。Input每组数据给出N,M。1...

2020-10-07 19:27:00 48

原创 Code Test(1)

0922test最小数Time Limit: 1 Sec Memory Limit: 128 MB文件名:a.cppDescription给定一个正整数n,请去掉其中的m个数字,使其剩下的数字按原先从左到右的相对次序组成一个新数,但该新数的值必须尽可能的小。Input只有一行,共2个整数,分别是n和m的值,中间用一个空格分隔。n不超过240位,所有的数据m的值都小于n的位数。Output只...

2020-10-07 19:26:00 242

原创 C/的材质图库(Code)

这里是我收集的关于C的图片。希望你会喜欢。

2020-10-07 11:04:47 111

转载 If I were a boy again

If I were a boy again, I would practice perseverance more often and never give up a thing because it was hard or inconvenient. If we want light, we must conquer darkness. Perseverance can sometimes equal genius in its results. "There are only two creatures

2020-10-07 10:10:54 502

原创 高精度算法模板

高精度加1#include <stdio.h>#include <string.h>int main(){ char a[310], b[310]; int c[310], d[310], e[310]; scanf("%s %s", a, b); int x = strlen(a), y = strlen(b); for (int i = 0; i < x; i++) { c[x-1-i] = a[i] - '0

2020-10-07 10:09:24 96

原创 生成随机数代码

御用头文件:#include<time.h>产生小数与负数#include<bits/stdc++.h>#include<ctime>using namespace std;int main(){ srand(time(0));//读入系统时间,种子数值 double a;//小数 for (int i = 0; i < 100; i++) if (rand() % 10 > 0.4) { c

2020-10-07 10:07:10 6084

原创 线性筛法求质数

数寻找时,开始最普遍的思路就是双重循环暴力枚举,时间复杂度O(N),复杂度通常比较高,最可怕的是当数据范围特别大的时候(1e),于是就需要像欧拉筛O(N)与埃氏筛O(nloglog)这样的算法。埃氏筛法又称为Eratosthenes筛法(埃拉托斯特尼),简单来讲就是找到一个质数x,然后成倍2x,4x,6x…这样来进行查找,找到一个数就标记,没标记的肯定是质数。埃氏筛法的基本思想 :一般从2开始,将每个质数的倍数标记成合数,以达到筛选质数的目的。#include <bits/stdc++.h&g

2020-10-07 10:05:45 394

原创 题解-删数问题加强版

描述键盘输入一个高精度的正整数N,去掉其中任意M个数字后剩下的数字按原左右次序将组成一个新的正整数。编程对给定的N和M寻找一种方案使得剩下的数字组成的新数最小。输出组成的新的正整数。 输入数据均不需判错。如果去掉了某几个位后得到的新整数开头为0,保留0。输入第一行为高精度正整数N(N的长度不超过10^6位) 第二行为M(0<=M<=N的长度)输出去掉M位后的最小新数。样例输入823867823输出23672这道题并不特别难,我们首先要明白他是如何走的,我们开始必须要从左

2020-10-07 10:03:19 293 1

原创 【算法简述】基础数据结构-带权并查集

带权并查集带权并查集实现带权并查集合并一般并查集只维护每个节点的根节点,但是带权并查集还可以维护每个节点到其更节点的距离,因此,这里带权并查集有重要的作用。(一开始看发现完全看不懂,但是看了资料 懂了那么一点点…)带权并查集实现现在给你们讲讲这个带权的并查集该怎么弄,一般就是这样的解题思路:将其中两个队列合并,也就是把第一个队列存到第二个队列后面,以后好方便查询这个合并的值。查询某个...

2020-10-07 09:06:46 244

原创 【算法简述】基础数据结构-种类并查集

种类并查集种类并查集的类型种类并查集是借助并查集来解决一系列种类的一些查询问题。这是带权并查集中的一种。但是!种类并查集没有什么特殊的地方,因为无畏就是让种类并查集的类型假设我们有N个人,N个个人有M组关系,我们让N个人的关系为X(同性)Y(异性),如果他们产生了矛盾,那么,会有多少种矛盾发生呢?其实可以用带权并查集来做的,2,6异性,6,1异性1,2同性:int get(int x)...

2020-10-07 09:06:40 252

原创 题解-翻棋子

Problem H: 翻棋子Description有一个4*4的棋盘,放有16枚棋子。每个棋子都是一面黑一面白,一开始有的黑面朝上,有的白面朝上。下面是一个例子,这个例子用文字描述为:bwbwwwwwbbwbbwwb我们可以任选一个棋子,把它自己和它的相邻棋子(上下左右,如果有的话)翻面。比如在例子中如果我们选第3行第1列的棋子翻面,布局就变成如下:bwbwbwwwwww...

2020-10-06 10:08:45 881

原创 【算法简述】基础数据结构-单调队列

单调队列单调队列的作用&原理题目组织代码它的队首和普通的队列一样,只能删除元素,而它的队尾既可以添加元素也可以删除元素。 他随队尾输出,出队。单调队列的作用&原理就是用来维护一段区间内的单调上升,下降性质,导出性质就是也可以用来维护一个区间内的值。他的原理是这样的:重复一遍,队列1,2,-3,-4,2.如果元素a入队,从队尾弹出所有大于a的值,再把a加紧队尾。1带入队列...

2020-10-06 10:06:33 251 6

原创 【算法简述】基础数据结构-单调栈

单调栈单调栈定义总结效果单调栈这个东西和单调队列差不多,只是维护一个栈的单调性,所以,这类提的解法可以参考单调队列。只是普通的单调栈!——真的!以前只是总结——by rebirth_death单调栈定义单调递增或单调减的栈 ,和比如在OI比赛中的那些比较大或比较小的输的参考如图,图中写的是我们栈中的元素,假设上图是一个单调栈。于是,此时的情况就有两种:栈顶元素小鱼即将插入的...

2020-10-06 10:06:26 196

空空如也

空空如也

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

TA关注的人

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