题解 算法

【视频】Copula算法原理和R语言股市收益率相依性可视化分析|附代码数据

阅读全文:http://tecdat.cn/?p=6193 最近我们被客户要求撰写关于Copula的研究报告,包括一些图形和统计输出。 copula是将多变量分布函数与其边缘分布函数耦合的函数,通常称为边缘。在本视频中,我们通过可视化的方式直观地介绍了Copula函数,并通过R软件应用于金融时间序列 ......
收益率 算法 收益 股市 原理

LR语法分析算法

LR语法分析器 组成:一个输入,一个输出,状态栈,驱动程序,语法分析表 注意:规约后需要寻找新的符号在栈顶状态上的转换 例如: 状态栈 符号栈 输入 0 5 $id *id$ 此时需要按F -> id规约 0 3 $F *id$ 3是规约的新符号F在栈顶状态0上的转换 代码实现 /** * P159 ......
算法 语法

算法随笔——分块

介绍 分块的基本思想是通过适当的划分和预处理,用空间换时间,更加接近朴素算法,是一种暴力数据结构。 例题1 例如最经典的区间修改区间查询,若用树状数组来做就显得过于麻烦了。而用线段树做这道题,虽然通用,但马亮比较大,非常不友好。于是一种 \(O(nlogn)\) 的解法出现了——分块。 思路 将整个 ......
算法 随笔

CF1900B题解

原题 思路 略微思考不难得到,三个数字的数量之差的奇偶性是不会变的。因为一个数的数量减少了 $1$,另一个数无论是增加 $1$ 或是减少 $1$,两者的差要么不变,要么增加 / 减少 $2$,对奇偶性无影响。 同时,如果另外两个数的数量变为 $0$,它们数目的差一定是 $0$。那么,我们只需要判断另 ......
题解 1900B 1900 CF

【题解】CodeForces 686E Optimal Point

传送门:https://codeforces.com/contest/686/problem/E 前言:本题解来源于作者某天晚上和一位朋友的发电内容(没错,这个作者直接把自己和朋友发电时发的话用markdown排了一下,传上来了),当时本来就比较口语化,加上作者的做法又实在太过离谱,因此可能语言表述 ......
题解 CodeForces Optimal Point 686E

【题解】LibreOJ #3051「十二省联考 2019」皮配

传送门:https://loj.ac/p/3051 首先,对于这样“少部分个体有特殊要求”的题目,我们先考虑,如果没有任何个体有特殊要求怎么做,然后再考虑怎么加上特殊要求; 对于这道题,如果 $k=0$,即没有学校有不喜欢的导师,那么,设总人数为 $al$,城市 $i$ 的人数和为 $cit_i$、 ......
题解 LibreOJ 3051 2019

P8773 [蓝桥杯 2022 省 A] 选数异或 题解

P8773 [蓝桥杯 2022 省 A] 选数异或 题解 题目链接 P8773 [蓝桥杯 2022 省 A] 选数异或 简要思路 题目让我们查询是否有两个数 \(a,b\) 满足 \(a \oplus b = x\),根据异或的性质,我们可以将上式转换为 \(b = a \oplus x\),因此对 ......
蓝桥 题解 P8773 8773 2022

【Python】【OpenCV】凸轮廓和Douglas-Peucker算法

针对遇到的各种复杂形状的主体,大多情况下,我们可以求得一个近似的多边形来简化视觉图像处理,因为多边形是由直线组成的,这样就可以准确的划分区域来便捷后续的操作。 cv2.arcLength() Method: 参数: curve:要计算周长的轮廓,可以是一个矩形、圆形、多边形等封闭曲线。 closed ......

代码随想录算法训练营第七天| 344.反转字符串 541. 反转字符串II

LeetCode 344.反转字符串 题目链接: LeetCode344 思路: 定义left、right指针,将两指针对应的值反转即可 class Solution { public: void reverseString(vector<char>& s) { int n = s.size(); ......
字符串 字符 随想录 训练营 随想

UVA1395 Slim Span 题解

Link UVA1395 Slim Span Question 求所有生成树中最大边权与最小边权差最小的,输出他们的差值 Solution 因为 \(n \le 100\) 非常小,先把边从小到大排序,那么生成树的边肯定是排序后上的边连续的一块 所以,可以枚举连续一块的起点 \(L\),\(R\) ......
题解 1395 Slim Span UVA

UVA753 A Plug for UNIX 题解

Link UVA753 A Plug for UNIX Question 有 \(n\) 个插座,\(m\) 个设备和 \(k\) 种转换器,每种转换器有无限多个。转换器可以插着转换器用,每个插座或插头的类型可能不同,求最少剩多少个不匹配的设备 Sulotion 先考虑转换器连用的情况,用边表 \( ......
题解 Plug UNIX UVA 753

双边滤波算法

H:\CodeSet\vcg完善1\pclPrj\bilateralFunc.h //双边滤波算法 float sigma_s_ = 0.5; float sigma_r_ = 0.5; pcl::PointCloud<pcl::PointXYZ>::Ptr plcCloud1; PointClou ......
双边 算法

CF1850E Cardboard for Pictures 题解

题意: 思路: 问题转化为:求解满足 $ \sum_{i = 1}^n (a_i + 2w)^2 = c $ 的 $ w $ 。 观察,等式左侧 $ \sum_{i = 1}^n (a_i + 2w)^2 $ 随 $ w $ 的增大而增大,而 $ c $ 不变,因此考虑二分 $ w $ 的值。 ......
题解 Cardboard Pictures 1850E 1850

CF1809D Binary String Sorting 题解

题意: 思路: 贪心: 单调不降的 $ 01 $ 字符串,一定是一串连续的 $ 0 $ 再加上一串连续的 $ 1 $ 。由于每次操作的代价很大,所以需要在操作次数尽可能少的情况下,尽可能多地使用交换操作。 由于 $ 1 $ 次交换操作,只能减少 $ 1 $ 个逆序对,当存在多个逆序对时,优先通过删除 ......
题解 Sorting Binary String 1809D

ucup hefei 题解

比赛链接 B 很有意思的题 首先题目的要求为可以拆分成 \(2\) 个不相交的不降子序列 根据 \(dilworth\) 定理,最小链覆盖 \(=\) 最长反链,所以要求最长反链 \(\le 2\) 即原序列的逆序列的最长不降子序列长度 \(\le 2\) 不难得到一个 \(dp\) 做法为: 令 ......
题解 hefei ucup

【数据结构和算法】搜索算法

① 搜索最小值 python的min函数返回列表中的最小项 1 def indexOfMin(lyst): 2 minIndex = 0 3 currentIndex = 1 4 while currentIndex < len(lyst): 5 if lyst[currentIndex] < ly ......
算法 数据结构 结构 数据

【数据结构和算法】排序算法

使用swap函数来交换列表中的两项的位置 1 def swap(lyst,i,j): 2 '''交换列表中两项的位置''' 3 temp = lyst[i] 4 lyst[i] = lyst[j] 5 lyst[j] = temp ① 选择排序 处于列表第一项,先找到最小项的位置,如果该位置不是列表 ......
算法 数据结构 结构 数据

Mybatisplus自定义主键生成策略,使用雪花算法生成16位的唯一ID

楼主在使用mybatisplus开发前后端分离项目时发现一个很奇怪的现象:所有更新/删除操作都不起作用,开启mybatis日志后发现前端传入的id值与实际的数据库的值不相同,最后三位总是000。 经过一系列查资料才知道,mybatisplus的默认ID生成器使用雪花算法,生成20位左右的ID,但js ......
算法 Mybatisplus 雪花 策略

路径规划算法 - 求解最短路径 - Dijkstra算法

Dijkstra算法的思想是广度优先搜索(BFS) 贪心策略。 是从一个顶点到其余各顶点的最短路径算法,节点边是不各自不同的权重,但都必须是正数 如果是负数,则需要 Bellman-Ford 算法 如果想求任意两点之间的距离,就需要用 Floyd 算法 求节点0 -> 4 的最短路径 每次从未标记的 ......
算法 路径 Dijkstra

拒绝算法推荐,使用rss订阅消息与新闻!

算法推荐的弊端就不说了 借用 RSSHub 镜像网站 如果你实在不会,又或者觉得麻烦,那你还可以搭其他网友的“便车”。 我收集了 9 个 公开的 RSShub 镜像网站,它们用的都是用自己的服务器,所以在流量方面也不会有问题。 服务器1 :https://rsshub.rssforever.com  ......
算法 消息 新闻 rss

java与算法Day1 Scanner的应用(一)

java中使用输入需要用到java.util.Scanner。Scanner有next,nextInt,nextString,hasNext,hasNextLine等方法。 使用 XXX variable = Scanner.NextXXX就可以获取一个输入值。next系列的方法,他们的作用都是从键 ......
算法 Scanner java Day1 Day

线性代数题解

前言 写完了这道题我好想刚明白一点最小割???UU好闪,拜谢UU。 题解 首先,我们可以发现若第 \(i\) 行的 \(B\) 没选,那么第 \(i\) 列的 \(B\) 也不选,所以此时对于行和列是等价的。 若 \(A_i\) 是 \(0\),则会减少贡献 \(\sum_{j}B_{i, j}\) ......
线性代数 题解 代数 线性

P8594 「KDOI-02」一个仇的复 题解

我会组合数! 首先发现同一列只有被不同的横块填或被一个相同的竖块填,且用竖块填完1列之后,会分成两个封闭的长方形,而长方形内部则用横块来填充。 先考虑一个子问题,某个 \(2 \times n\) 长方形内只用 \(k\) 个 \(1 \times x\) 的横块填的方案数,显然有 \(\sum\l ......
题解 P8594 8594 KDOI 02

CF603题解

CF603 Codeforces Round 334 (Div. 1) CF603A link CF603A题意 现有一个长度为 \(n\) 的 01 串, 可以进行一次区间翻转 ( 起点终点随意, 并且区间里的值 1 变 0, 0 变 1 ), 得到一个新的 01 串, 使得得到的新的 01 串中 ......
题解 603 CF

[NOI Online #1 入门组] 跑步 题解

[NOI Online #1 入门组] 跑步 题解 突然发现之前打过 NOI Online,啥都不会的情况下这题竟然拿了 70pts。 思路 题意就是统计对于 \(n\le 10^5\),把它进行无序正整数划分的方案数。 对于 70pts,我们考虑 DP:\(f_{i, j}\) 表示对于 \(1\ ......
题解 Online NOI

CF1824B1 LuoTianyi and the Floating Islands (Easy Version) 题解

题意: 思路: 由于 $ k ∈ [1,3] $ ,分类讨论: 当 $ k = 1 $ 时,有人结点自身即为好结点,每种情况的期望为 $ \frac{1}{n} $ , $ n $ 种情况的期望和为 $ 1 $ 。最终答案即为 $ 1 $ 。 当 $ k = 2 $ 时,$ 2 $ 个有人结点之间的 ......
题解 LuoTianyi Floating Islands Version

ABC325G offence 题解

给出一个长为 \(n\) 的字符串和非负整数 \(k\)。你可以进行以下操作若干次,使得最终字符串长度最小。 选择一个字串 of。然后删掉 of 以及这之后的 \(i\) 个字符。\(i\) 由你决定,但要满足 \(0\leq i\leq k\)。 输出这个最小长度。\(1\leq n,k\leq ......
题解 offence 325G ABC 325

单调栈与单调队列算法总结

单调栈 知识概览 单调栈最常见的应用是找到每一个数离它最近的且比它小的数。 单调栈考虑的方式和双指针类似,都是先想一下暴力做法是什么,然后再挖掘一些性质如单调性,最终可以把目光集中在比较少的状态中,从而达到降低时间复杂度的作用,都是算法优化的一种手段。 对于的情况,更有可能是答案,因此将删掉。最终, ......
队列 算法

代码随想录算法训练营第六天| 454.四数相加 15.三数之和 18.四数之和

LeetCode 454.四数相加 题目链接: LeetCode454 思路: 将两个数组中的数存放到一个map中,用另外两个数组的值在map中去减 class Solution { public: int fourSumCount(vector<int>& A, vector<int>& B, v ......
之和 随想录 训练营 随想 算法

扩展欧几里得算法

扩展欧几里得算法 裴蜀定理(Bézout's lemma) 定义 设 \(a,b\) 是不全为零的整数,对任意整数 \(x,y\),满足 \(\gcd(a,b)\mid ax+by\),且存在整数 \(x,y\), 使得 \(ax+by=\gcd(a,b)\). 证明 对于第一点 由于 \(\gcd ......
算法