笔记
文章平均质量分 53
cc!
这个作者很懒,什么都没留下…
展开
-
Find The Array(cf-1463B)
利用二进制,找到ai的最高位1输出即可,这样找到的每个数肯定互相都能整除,其次,相减之后在乘以2肯定是原创 2022-08-11 13:23:21 · 92 阅读 · 0 评论 -
Candies差分约束
题意:很明显,我们可以把每一对关系看成一条边,如a-->b权值为c, b原创 2022-08-08 20:01:31 · 138 阅读 · 0 评论 -
最短路题单练习
思路:我们可以改变dijkstra的dis数组的含义,即所有点到点v的路径上的最小值,例如现在有一条路径为 u->v,我们可以用 dis[u] 和 len(u->v)的长度取最大,再用此时的得到的值,与dis[v]取最小。题目大意:N个点,M条边,每条边有权值。求一条1号点到N号点的路径,要求使得路径中的边权最小值最大。思路:这道题和上一道思路类似,我们可以改变dis数组的含义,在更新dis的过程中与上一道题相反即可。题目大意:求所有路径中的最长的边,在这些最长边中找到最小值并输出。.........原创 2022-08-05 18:55:04 · 302 阅读 · 0 评论 -
二分图--最小点覆盖及证明
假如选了一个点就相当于覆盖了以它为端点的所有边。最小顶点覆盖就是选择最少的点来覆盖所有的边。原创 2022-07-21 19:42:41 · 3545 阅读 · 6 评论 -
字符变换双端队列
自己的笔记用题目了解已知有两个字串A,B及一组字串变换的规则(至多6个规则)A1→B1A2→B2…规则的含义为在A中的子串A1可以变换为B1、A2可以变换为B2…。例如变换规则为则此时,A可以经过一系列的变换变为B,其变换的过程为共进行了三次变换,使得A变换为B。......原创 2022-07-17 17:58:22 · 117 阅读 · 0 评论 -
双端队列bfs
笔记以题目进行讲解达达是来自异世界的魔女,她在漫无目的地四处漂流的时候,遇到了善良的少女翰翰,从而被收留在地球上。翰翰的家里有一辆飞行车。有一天飞行车的电路板突然出现了故障,导致无法启动。电路板的整体结构是一个R行C列的网格(R,C≤500),如下图所示。每个格点都是电线的接点,每个格子都包含一个电子元件。电子元件的主要部分是一个可旋转的、连接一条对角线上的两个接点的短电缆。在旋转之后,它就可以连接另一条对角线的两个接点。...原创 2022-07-17 15:50:57 · 149 阅读 · 0 评论 -
cf548-D-Mike and Feet
给定一组长度为n的序列a[1],a[2]…a[n](n原创 2022-07-16 23:30:16 · 105 阅读 · 0 评论 -
CF-548-D-Mike and Feet
给定一组长度为n的序列a[1],a[2]…a[n](n原创 2022-07-16 14:46:35 · 141 阅读 · 0 评论 -
P1115 最大子段和
给出一个长度为n的序列a,选出其中连续且非空的一段使得这段和最大。原创 2022-07-15 15:10:43 · 117 阅读 · 0 评论 -
k.aaaaaaaaaaA heH heH nuN
题目链接题目描述:题意:给出多组例,每一组给出一个数字,让我们构造一个字符串,让其组合数能达到给出的数字思路:1.我们首先可以发现,当前缀已经是nunhehhe的时候(nunhehhe + h+a个x),在一个h后面a个x能构成2^x-1组2.当 nunhehhe hhhha的时候 ,有p个h,则有p个有效子序列这时候我们结合上面的(1)2^x-1个我们可以想到的是能不能构成2^x能,以便使用二进制,所以结合(2),我们在最后一个a前加一个h,这不就构成了2^x了?所以,我们根据二进制来确定h的位置,首先输原创 2022-07-14 16:35:30 · 515 阅读 · 0 评论 -
Java之可变参数
见注释package com;/** * @author 柴城 * @version 1.0 */public class tt { public static void main(String[] args) { HspMethod m = new HspMethod(); System.out.println(m.sum(1, 5, 100)); //106 System.out.println(m.sum(1,19)); //.原创 2022-05-10 09:18:34 · 127 阅读 · 0 评论 -
(宽度优先搜索)bfs(包含所有模型)
首先,我们要了解什么是bfs:宽度优先搜索算法(又称广度优先搜索)是最简便的图的搜索算法之一,这一算法也是很多重要的图的算法的原型.其实bfs是盲目的搜索周围,知道搜到目的地为止我们可以用一张图来了解bfs:首先从A出发,查看所有能到达的点,然后把周围的都加入队列,然后取出队头,在找出所有能到达的点并加入队列这样一定能到达所有的点 BFS(int x) { queue q; // 定义队列q 将x入队; vis[x] = true; //vis数组为bo.原创 2022-04-25 22:39:13 · 1828 阅读 · 0 评论 -
二叉搜索树
L2-004 这是二叉搜索树吗?首先我们要知道什么是二叉搜索树,即一棵二叉搜索树可被递归地定义为具有下列性质的二叉树:对于任一结点,其左子树中所有结点的键值小于该结点的键值; 其右子树中所有结点的键值大于等于该结点的键值; 其左右子树都是二叉搜索树。然后我们来看一下题所谓二叉搜索树的“镜像”,即将所有结点的左右子树对换位置后所得到的树。给定一个整数键值序列,现请你编写程序,判断这是否是对一棵二叉搜索树或其镜像进行前序遍历的结果。输入格式:输入的第一行给出正整数原创 2022-04-20 16:16:01 · 251 阅读 · 0 评论 -
天梯赛 家庭房产
思路:这道题相当于让我们对有关系的人进行合并,然后输出所有种族的信息,很容易想到利用并查集对于有家庭关系的,利用join函数把他们合并起来,并在join中把num,tao,area进行传递,由于题目要求了输出时输出该家庭编号最小的那个,所以在传递的时候往小的方向传递即可有一个问题需要注意,在加某个人a的套数和面积数的时候,不应该直接加在a自己上面,应该加在find(a)上,因为后续在更新传递a的时候,用到的也是find后的结果,如果放在a上面,就传不到祖先上面了最后输出的时候只要输出fi..原创 2022-04-19 23:25:17 · 83 阅读 · 0 评论 -
7-10 树的遍历 (25 分)
给定一棵二叉树的后序遍历和中序遍历,请你输出其层序遍历的序列。这里假设键值都是互不相等的正整数。输入格式:输入第一行给出一个正整数N(≤30),是二叉树中结点的个数。第二行给出其后序遍历序列。第三行给出其中序遍历序列。数字间以空格分隔。输出格式:在一行中输出该树的层序遍历的序列。数字间以1个空格分隔,行首尾不得有多余空格。输入样例:72 3 1 5 7 6 41 2 3 4 5 6 7输出样例:4 1 6 3 5 7 2#include<iost..原创 2022-04-19 22:09:25 · 62 阅读 · 0 评论 -
动态规划初始化问题(dp)
这是一篇本人做背包问题题目时的一些感悟,文章较长,如果有内容或者排版问题,欢迎大家建议指正!学背包问题的过程1、一开始学背包问题时遇到的大多数的状态表示是:从前i个物品中选,且总体积不超过j的问题。2、慢慢地在提高课中,就有出现状态表示是:从前i个物品中选,且总体积恰好是j的问题。例如 AcWing 1023. 买书 ,求的是恰好是j的总方案数问题。3、同时还出现了状态表示是:从前i个物品中选,且总体积至少是j的问题。例如 AcWing 1020. 潜水员 ,求的是总体积至少是j的最小价值可以观转载 2022-04-13 16:37:47 · 557 阅读 · 1 评论 -
动态规划(dp学习)(几乎涵盖所有dp模型)
持续更新中,也欢迎大佬指出错误1.数学三角模型:1.摘花生Hello Kitty想摘点花生送给她喜欢的米老鼠。她来到一片有网格状道路的矩形花生地(如下图),从西北角进去,东南角出来。地里每个道路的交叉点上都有种着一株花生苗,上面有若干颗花生,经过一株花生苗就能摘走该它上面所有的花生。Hello Kitty只能向东或向南走,不能向西或向北走。问Hello Kitty最多能够摘到多少颗花生。思路:这其实是一个简单的数字三角模型的题#include<原创 2022-04-11 01:08:49 · 1775 阅读 · 1 评论 -
最短算法 Dijkstra
Dijkstra 的整体思路比较清晰即进行n(n为n的个数)次迭代去确定每个点到起点的最小值 最后输出的终点的即为我们要找的最短路的距离注意:每次更新一个点到起点的最小距离至于为什么是这样那么这就涉及到Dijkstra算法的具体数学证明了#include<iostream>#include<algorithm>#include<cstring>using namespace std;const int N=510;int g[N][N];原创 2022-02-28 15:40:24 · 84 阅读 · 0 评论 -
包子凑数(完全背包)
//最大公约数不是1则只能凑出其倍数 //若是一,则dp //集合表示:只考虑前i个物品,能否凑数j //状态bool值 //计算:多重背包(不选第i件物品则为f[i-1][j],要选则为 |上f[i][j-w]) // f[i][j] = f[i][j] | f[i][j-w] | f[i][j-2w] | f[i][j-3w]...... // f[i][j-w] = f[i][j-w] | f[i][j-2w]| f[i][j-3w]....原创 2022-02-13 18:24:56 · 460 阅读 · 0 评论 -
密码错误等问题
下面写几个秘密错误等问题1、如果密码全为数字,不存在大小写问题,可以看看数字键是否打开。2、是否记错密抄码,或是设置密码的时候误打了一些键,未能发现。3、键盘是否损坏,是不是有些键位异常,导致密码错误。4、如果反复尝试仍无法进入,可通过重装系知统或还原的方式消除密码,再重新设置。5、一键还原不需要密码也是可以进入的。其他1、在开机时,按下F8进入带命令提示符的安全模式输入”NET USER+用户名+123456/ADD”可把某用户的密码强行设置为”123456″。2、系统首先以adminis原创 2021-09-26 06:41:15 · 711 阅读 · 0 评论