Code
文章平均质量分 92
在通信和信息处理中,代码(code)是指一套转换信息的规则系统,例如将一个字母、单词、声音、图像或手势转换为另一种形式或表达,有时还会缩短或加密以便通过某种信道或存储媒体通信。一个最早的例子是语言的发明,它使人可以通过说话将他看到、听到、感受到或想到的事情表达给其他人。
Ljnoit
Copyright 2016-2024 Ljnoit
本人荣誉:第17届浙江省大学生程序设计竞赛场外赛金牌️
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
【Code】转置
转置转置原理一些例子多点求值例题简单函数的复合1.加法2.乘法3.幂4.逆元5.开kkk次根6.指数7.对数用途转置原理**线性算法:**有一个n×nn\times nn×n的矩阵MMM,输入一个nnn维向量aaa,计算b=Mab=Mab=Ma的过程叫线性算法。具体的,若一个算法只包含以下三种操作,那么其就是线性算法:x←x+cyx\leftarrow x+cyx←x+cyswap(x,y)swap(x,y)swap(x,y)x←cxx\leftarrow cxx←cx**线性算法的转置:原创 2021-10-12 09:45:00 · 839 阅读 · 0 评论 -
【Code】杨氏矩阵(杨表)
杨表定义RSK算法杨表和LIS最长的k-LIS子序列杨表与钩子公式半标准杨表的计数参考文献定义设λ=(λ1,λ2,⋯ ,λm)\lambda=(\lambda_1,\lambda_2,\cdots,\lambda_m)λ=(λ1,λ2,⋯,λm)是nnn的一个整数拆分(记为λ⊢n\lambda \vdash nλ⊢n),一个形状为λ\lambdaλ的杨图为mmm行,第iii行有λi\lambda_iλi列的一个表格。而一个形状为λ\lambdaλ的标准杨表为将1∼n1\sim n原创 2021-09-04 19:32:26 · 1833 阅读 · 0 评论 -
【Code】可追溯化数据结构
文章目录0.可追溯化1.并查集2.队列3.栈4.双端队列5.优先队列参考文献0.可追溯化对于数据结构DDD,初始状态为D0D_{0}D0,支持操作U1,U2,...UsU_{1},U_{2},...U_{s}U1,U2,...Us和询问Q1,Q2,...,QtQ_{1},Q_{2},...,Q_{t}Q1,Q2,...,Qt前者可以理解为该数据结构到自身的映射,后者可以理解为该数据结构到所需类型的映射(另外,可能操作和询问都还有额外的自变量,即是一个多元的函数)部分可追溯化:对上原创 2021-08-24 11:37:41 · 938 阅读 · 0 评论 -
【Pascal】再谈对拍程序的应用
文章目录绪言对拍的思想于是乎对拍程序(第4个程序)介绍例题题目标算动归程序(第1个程序)搜索程序(第2个程序)生成数据的程序(第3个程序)最后一步总结绪言信息学竞赛中,高手往往能够有很高的正确率,这一方面取决于他们超前的代码能力(传说陈立杰大神在WC2013中,当场怒A平面图神题,代码500+行)。膜拜一下。当然了,除了超前的代码能力之外,他们还非常熟悉一种对拍技术,对他们(包括我)来说,对拍已经是家常便饭了。所以要成为高手的话,你也必须学会对拍。曾经已经写了一个简单的C++版对拍原创 2021-08-12 12:26:14 · 354 阅读 · 0 评论 -
【Code】Runtime Error(ACCESS_VIOLATION) 解决方法
在做题过程中,偶尔会遇到Runtime Error(ACCESS_VIOLATION) 的错误提示。遇到这种运行错误,一般情况下是数组下标越界造成的,只需检查数组开的是否足够大,并将数组范围适当开大即可。原创 2021-02-18 12:37:00 · 1325 阅读 · 0 评论 -
【Code】对于一个有5个元素的数组,最少需要几次比较才能保证数组有序?
文章目录问题答案引理引理的证明问题对于一个有5个元素的数组,最少需要几次比较才能保证数组有序?A. 5次B. 6次C. 7次D. 8次答案 C引理2次比较可以将一个未知的元素插入到一个有3个元素的有序数列中并且保证插入完成后数列有序。引理的证明...原创 2020-10-10 18:55:43 · 1547 阅读 · 0 评论 -
【C++】最短路径模板题题答
文章目录Floyd算法题目提示代码Dijkstra算法题目提示代码Spfa算法题目提示代码1代码2Floyd算法题目HihoCoder-1089vjudge提示小Ho道:“你说的很有道理,我只需要从每个节点开始使用Dijstra算法就可以了!”小Hi摇摇头道:“解决问题不是关键,学到知识才是关键,而且知识本身也远远没有掌握学习的方法重要!”小Ho只得答道:“好的好的,听你说便是了!”于是小Hi便开心道:“这次要说的算法叫做Floyd算法,是一种用于求图结构上任意两点间最短距离的算法!”小原创 2020-05-16 08:56:29 · 849 阅读 · 0 评论 -
【C++】十大经典排序算法详解
文章目录排序算法总览比较类排序算法交换排序一. 冒泡排序算法思想算法步骤动图演示代码实现二. 快速排序算法思想算法步骤动图演示代码实现三. 插入排序算法思想算法步骤动图演示代码实现四. 希尔排序算法思想算法步骤动图演示代码实现五. 选择排序算法思想算法步骤动图演示代码实现六. 堆排序算法思想算法步骤动图演示代码实现七. 归并排序算法思想算法步骤动图演示代码实现非比较类排序算法一. 计数排序算法思想...翻译 2020-04-18 11:21:12 · 7979 阅读 · 5 评论 -
【C++】堆排序
堆排序百科名片排序操作动图演示代码实现百科名片堆排序(英语:Heapsort)是指利用堆这种数据结构所设计的一种排序算法。堆是一个近似完全二叉树的结构,并同时满足堆积的性质:即子结点的键值或索引总是小于(或者大于)它的父节点。排序操作在堆的数据结构中,堆中的最大值总是位于根节点(在优先队列中使用堆的话堆中的最小值位于根节点)。堆中定义以下几种操作:最大堆调整(Max Heapify):...原创 2020-04-15 14:05:50 · 298 阅读 · 0 评论 -
【Python】十大经典排序算法详解
排序算法总览十大排序算法可以分为比较类排序以及非比较类排序。比较类排序:通过比较来决定元素间的相对次序,由于其时间复杂度不能突破O(nlogn)O(nlogn)O(nlogn),因此也称为非线性时间比较类排序。非比较类排序:不通过比较来决定元素间的相对次序,它可以突破基于比较排序的时间下界,以线性时间运行,因此也称为线性时间非比较类排序。排序算法可以分为内部排序和外部排序,内部排序是数...转载 2020-04-13 10:17:21 · 648 阅读 · 1 评论 -
【Java】Java速成
Java速成关于 Java环境安装WindowsLinux使用包管理器安装手动安装MacOS基本语法注释基本数据类型申明变量final 关键字数组字符串输出控制语句选择循环注意事项类名与文件名一致关于 JavaJava 是一种广泛使用的计算机编程语言,拥有 跨平台 、 面向对象 、 泛型编程 的特性,广泛应用于企业级 Web 应用开发和移动应用开发。环境安装使用 OpenJDK 作为实例,...转载 2020-04-11 09:06:43 · 788 阅读 · 0 评论 -
【Python】Python速成
Python速成关于 Python为什么要学习 Python学习 Python 时需要注意的事项环境安装WindowsmacOS/Linux关于镜像和 pip基本语法关于注释基本数据类型与运算输入输出开数组使用 `list`使用 Numpy常用内置库对比 C++ 与 Python参考文档关于 PythonPython 是一种目前已在世界上广泛使用的解释型面向对象语言,非常适合用来测试算法片段和...转载 2020-04-11 08:29:13 · 723 阅读 · 0 评论 -
【C++】C++中头文件使用双引号与书名号的区别
C++中头文件使用""与<>的区别:使用" "是搜索所有目录。使用< >是搜索当前目录。一般情况下,自行定义的头文件应该用"",因为这些文件放在工程目录(也就是源程序的目录)下,而不是放在公共头文件目录下,如果用<>则找不到头文件。而系统提供的头文件,比如math.h,可以用<>。...原创 2020-03-29 12:43:09 · 3512 阅读 · 0 评论 -
【C++】dfs序与树上差分
dfs序与树上差分 引入 dfs序就是用递归的方法遍历一棵树的顺序。 这是一个括号序列,有助于解决树上的很多问题。树上差分算法,是一个适用于树上区间操作的算法.它是差分数组,前缀和求解的树上拓展.众所周知,树这类特殊的结构,往往具有很多性质,而树上差分往往就是结合这些性质,进行高效率的处理.我们还需要知道一点,树上差分基本上不会出裸题,往往会和大量的算法结伴出行.树上差分,准确来说不是算法,而是一种优秀的思想.原创 2020-03-24 10:51:30 · 1138 阅读 · 0 评论 -
【C++】浅谈迭代加深搜索
迭代加深搜索简介步骤伪代码解题策略简介迭代加深是一种 每次限制搜索深度的 深度优先搜索。它的本质还是深度优先搜索,只不过在搜索的同时带上了一个深度 ddd ,当ddd 达到设定的深度时就返回,一般用于找最优解。如果一次搜索没有找到合法的解,就让设定的深度+1 ,重新从根开始。既然是为了找最优解,为什么不用 BFS 呢?我们知道 BFS 的基础是一个队列,队列的空间复杂度很大,当状态比较...原创 2020-03-21 20:09:21 · 684 阅读 · 0 评论 -
【Code】深谈Pascal转C++
Pascal转C++sacnf() 和 printf()#define 宏定义三目运算符结构体 struct文件操作命名空间在浅谈了Pascal转C++后,我们深谈Pascal转C++。sacnf() 和 printf()scanf 与 printf 其实是 C 语言提供的函数,保存在<cstdio>或<stdio.h>头文件中。一般情况下,它们的速度比 cin 和 ...原创 2020-03-19 11:21:22 · 712 阅读 · 2 评论 -
【Code】浅谈Pascal转C++
Pascal转C++引入准备和比较简单的转换头文件输入输出注释变量变量的类型变量的定义全局变量和局部变量作用域常量赋值语句if条件判断语句循环语句for循环while循环函数数学函数(自带函数)排序函数自定义函数关于字符,ASCII码的问题字符串字符数组string类型杂项引入中国计算机学会于2016年11月1日发布了《CCF关于NOI系列赛事程序设计语言变更的公告》,内容如下:根据国际信息...原创 2020-03-18 15:31:56 · 979 阅读 · 1 评论 -
【C++】输出优化(快写)
原理同样是众所周知, putchar 是用来输出单个字符的函数因此将数字的每一位转化为字符输出以加速要注意的是,负号要单独判断输出,并且每次 %(mod)取出的是数字末位,因此要倒序输出。代码实现inline int write(int x) { if(x<0) { x=-x; putchar('-'); } if(x>9) write(x/10); pu...原创 2020-03-14 19:25:40 · 1734 阅读 · 0 评论 -
【Code】C语言与C++语言的区别
C语言与C++语言的区别区别1——宏与模板区别2——指针与引用区别3——struct区别4——const区别5——内存分配本文介绍 C 与 C++ 之间重要的或者容易忽略的区别。尽管 C++ 几乎是 C 的超集,C/C++ 代码混用一般也没什么问题,但是了解 C/C++ 间比较重要区别可以避免碰到一些奇怪的 bug。如果你是以 C 为主力语言的 OIer,那么本文也能让你更顺利地上手 C++。...转载 2020-03-13 11:22:02 · 348 阅读 · 0 评论 -
【C++】AC自动机
我知道,很多人在第一次看到这个东西的时侯是非常兴奋的。(别问我为什么知道)不过这个自动机啊它叫作 `Automaton` ,不是 `Automation` ,让萌新失望啦。切入正题。似乎在初学自动机相关的内容时,许多人难以建立对自动机的初步印象,尤其是在自学的时侯。而这篇文章就是为你们打造的。笔者在自学 AC 自动机后花费两天时间制作若干的 gif,呈现出一个相对直观的自动机形态。尽管这个图似乎不太可读,但这绝对是在作者自学的时侯,画得最~~妙不可读~~的 gif 了。另外有些小伙伴问这个 gif 拿什么画转载 2020-03-12 20:05:24 · 1136 阅读 · 0 评论 -
【Code】代码答案错误怎么办?三种方法教你如何查错
查错的方法1.目测法2.调试法3.对拍法在写完代码的时候,测一下样例,很多时候样例过了,但交到OJ上却挂了,始终找不到错误原因。有时候连样例都过不了。因此,我总结了三种方法教给大家,让大家有方向地去查错,而不是看着程序发呆。希望大家可以把三种方法熟练掌握,并懂得去运用。1.目测法目测法并不是简单的目测。此方法用于数据小且少的题目。用例子来说话:FZU-1889 龟兔赛跑原题 vju...原创 2020-03-11 15:45:06 · 11840 阅读 · 0 评论 -
【C++】矩形面积并、矩形面积交、矩形周长并(离散化、扫描线、线段树总结)
文章目录一.矩形面积并题目:Atlantis方法一:离散化方法二:扫描线方法三:线段树+扫描线二.矩形面积交三.矩形周长并一.矩形面积并题目:AtlantisPOJ-1151 HDU-1542 LA-2184 ZOJ-1128链接:https://vjudge.net/problem/HDU-1542方法一:离散化#pragma GCC optimize(3,"Ofast","...原创 2020-03-06 11:35:40 · 1629 阅读 · 0 评论 -
【C++】二分图
二分图百科名片举例定义二分图的判定——黑白染色例1 二分图判定题目描述输入描述输出描述样例输入样例输出思路代码二分图的最大匹配例2 二分图最大匹配之匈牙利算法题目描述输入描述输出描述样例输入样例输出思路代码例3 The Perfect Stall题目大意思路代码二分图的最大独立集例4 Girls and Boys代码例5 Knights in Chessboard思路二分图的最小点覆盖例6 Mud...原创 2020-03-05 11:13:02 · 1254 阅读 · 0 评论 -
【C++】字典树(trie树)
字典树(trie树)引入百科名片例1 单词查找树题目描述输入描述输出描述样例输入样例输出思路代码引入当我们走进图书馆的阅览室寻找书时,会不由自主地根据书架上的分类标签寻找自己所喜好的书籍;当打开电脑中的资源管理器时,我们会看到一层一层的目录结构。它们的存在,方便了我们生活中的一个重要的问题——检索。在信息学竞赛( Olympiad in Informatics ,简称 OI)的学习过程中,我...原创 2020-03-04 11:18:02 · 685 阅读 · 0 评论 -
【C++】树型动态规划
树型动态规划摘要例1 没有上司的舞会题目描述输入描述输出描述样例输入样例输出思路1 定义状态:2 转移方程:3 初始值:4 答案:代码例2 数字转换题目描述输入描述输出描述样例输入样例输出样例说明数据范围代码例3 二叉苹果树题目描述输入描述输出描述样例输入样例输出数据范围思路1 状态定义2 转移3 初始4 答案代码例4摘要之所以这样命名树规,是因为树规的这仙特殊性:没有环,dfs是不会重复,而...原创 2020-03-03 08:57:39 · 469 阅读 · 0 评论 -
【Code】LA是什么题库?
问题:LA是什么题库?答案:LA=UVALive=ICPC Live Archive网址:https://icpcarchive.ecs.baylor.edu/建议在vjudge上做题:https://vjudge.net/problem#OJId=UVALive&probNum=&title=&source=&category=all...原创 2020-03-01 15:10:46 · 817 阅读 · 0 评论 -
【C++】字符串匹配算法——KMP算法
背景介绍在文本编辑中,我们经常要在一段文本中某个特定的位置找出某个特定的字符或模式。再比如,在HTTP协议里的字节流,有各种关键的字节流字段,对HTTP数据进行解释就需要用到模式匹配算法。由此,便产生了字符串的匹配问题。KMP算法是由Knuth,Morris,Pratt三人共同提出的模式匹配算法,其对于任何模式和目标序列,都可以在线性时间(n+m)内完成匹配查找,而不会发生退化,是一个非常...原创 2020-03-01 10:30:24 · 708 阅读 · 0 评论 -
【C++】单调队列优化动态规划
引入可用单调队列优化的动规有一大类题型,它们多半都有一个特征:可以化归为序列中定长区间的最值问题。注意这里必须是定长区间,否则应用RMQ算法。下面举一个例子:输入:第一行两个正整数N(N<=600000),M。接下来一行N个数。输出:对于每个区间[i,i-M+1],输出其中的最小值思路:很显然这道题数据大到不允许利用RMQ的各种O(NlogN)的算法,想到每一次找最小...原创 2020-02-29 09:43:22 · 418 阅读 · 0 评论 -
【C++】最近公共祖先 LCA
最近公共祖先百科名片最近公共祖先Lowest Common AncestorsLCA简单引入对于有根树T的两个结点u、v,最近公共祖先LCA(T,u,v)表示一个结点x,满足x是u、v的祖先且x的深度尽可能大。红色的都是是A和B的公共祖先,但只有最近的C才是最近公共祖先。LCA问题是树上的一个经典问题,在很多方面有着广泛的应用,比如求LCP(最长公共前缀),接下来我们就来介绍...原创 2020-03-09 11:30:45 · 3417 阅读 · 0 评论 -
【C++】强连通分量
有向图的强连通分量。例题题目链接:http://poj.org/problem?id=2186vjudge:https://vjudge.net/problem/POJ-2186题目大意:有一群牛,总数为N(N<=10000)。题目数据为牛之间的关系,比如说1仰慕2,2仰慕3等等,设这种仰慕是可以传递的,如果1仰慕2,那么1也会同时仰慕2仰慕的那些牛。(关系数e<=500...原创 2020-02-25 09:45:48 · 1013 阅读 · 0 评论 -
【C++】树状数组
什么是树状数组?顾名思义,就是用数组来模拟树形结构呗。那么衍生出一个问题,为什么不直接建树?答案是没必要,因为树状数组能处理的问题就没必要建树。和Trie树的构造方式有类似之处。树状数组可以解决什么问题?可以解决大部分基于区间上的更新以及求和问题。树状数组和线段树的区别在哪里?树状数组可以解决的问题都可以用线段树解决,这两者的区别在哪里呢?树状数组的系数要少很多,就比如字符串模拟大数可以...原创 2020-02-24 14:39:54 · 1223 阅读 · 0 评论 -
【C++】图论基础总结(图的遍历+最短路径算法)
什么叫图论?研究图的问题一门高深的学科。什么是图?就是由点和线组成的图形G=<V,E>G=graph V=vertex E=edge原创 2020-02-23 14:44:02 · 5389 阅读 · 0 评论 -
【C++】在线IDE
1.洛谷在线IDEhttps://www.luogu.com.cn/ide2.简单教程代码编辑器https://www.twle.cn/t/yufei/cpp/helloworld3.菜鸟工具https://c.runoob.com/compile/12原创 2020-01-21 19:36:38 · 8010 阅读 · 0 评论 -
【Code】OJ推荐
Virtual Judgehttps://vjudge.net/Virtual Judge is not a real online judge. It can grab problems from other regular online judges and simulate submissions to other online judges. It aims to enable h...原创 2020-02-22 11:54:35 · 4700 阅读 · 0 评论 -
【C++】高精度加减乘除模板
利用重载运算符#pragma GCC optimize(3,"Ofast","inline")#pragma G++ optimize(3,"Ofast","inline")#include <iostream>#include <cstdio>#include <cmath>#include <cstring>#include ...原创 2020-02-19 08:23:19 · 751 阅读 · 0 评论 -
【Ware】VSCode常用快捷键
WindowsLinuxMacOS原创 2020-02-18 16:42:04 · 1009 阅读 · 0 评论 -
【C++】while(scanf("%d",&n)!=EOF)怎么结束?
while(scanf("%d",&n)!=EOF) {}这个循环读入怎么结束?Windows/DOS下:按Ctrl+ZLinux/Unix下:按Ctrl+D原创 2020-02-17 15:36:25 · 2293 阅读 · 1 评论 -
【Code】搜狗浏览器无法访问vjudge
问题:搜狗浏览器无论是兼容模式还是高速模式都无法上 vjudge.net 网站。解决方法:换用其他浏览器(比如:Chrome、Baidu、QQ、360等)原创 2020-02-12 18:49:36 · 1719 阅读 · 0 评论 -
【Code】背包问题九讲(崔添翼)
下载链接:https://raw.githubusercontent.com/tianyicui/pack/master/V2.pdf原创 2020-02-08 18:54:28 · 1272 阅读 · 0 评论 -
【C++】球盒问题总结(八种情况)
n个球放入m个盒子里一共是八种情况:1.球相同 盒不同 无空箱① ans=C(n-1,m-1) (n>=m)② ans=0 (n<m)2.球相同 盒相同 允许空箱ans=C(n+m-1,m-1)3.球不同 盒相同 无空箱即第二类斯特林数①dp[n][m]=m*dp[n-1][m]+dp[n-1][m-1] (1<=m<n)...原创 2020-02-08 10:00:23 · 6169 阅读 · 4 评论
分享