题解 算法

算法效率中的基本概念

算法复杂度是一个必考的知识点,常常出现在阅读程序题中,让考生进行判断。 1.先理解算法模板的复杂度计算 2.再尝试套用初赛题目中的复杂度计算 3.递归算法的复杂度可以展开计算 算法效率是评估算法性能的一个关键指标,一般而言分析算法效率的方式有两种: 时间复杂度 空间复杂度 在一般的算法分析中,考察的 ......
算法 效率 概念

算法复杂度分析

常见的时间复杂度量级有:常数阶O(1),对数阶O(logn),线性阶O(n),线性对数阶O(nlogn),平方阶O(n2),立方阶O(n3),K次方阶O(nk),指数阶O(2n)。他们的时间复杂度越来越大,执行的效率越来越低。 下面选取一些较为常用的来讲解一下。 常数阶O(1) for(int i ......
复杂度 算法

高并发情况下的漏桶算法(javascript版)

class LeakyBucket { //高并发情况下的漏桶算法 constructor(capacity, leakRate) { // 创建一个容量为capacity,每秒漏水量为leakRate的漏桶 this.capacity = capacity; this.leakRate = lea ......
算法 javascript 情况

C#加密算法

一、MD5加密 /// <summary> /// MD5_16位加密 /// </summary> public static string GetMD5_16(string value) { string md5Str = string.Empty; MD5 md5 = new MD5Crypt ......
算法

【算法】【线性表】最长公共前缀

1 题目 给k个字符串,求出他们的最长公共前缀(LCP) 样例 1: 输入: k个字符串 = ["ABCD", "ABEF", "ACEF"] 输出: "A" 解释:公共最长前缀是"A". 样例 2: 输入: k个字符串 = ["ABCDEFG", "ABCEFG", "ABCEFA"] 输出: " ......
前缀 线性 算法

文心一言 VS 讯飞星火 VS chatgpt (154)-- 算法导论12.3 1题

一、用go语言,给出 TREE-INSERT 过程的一个递归版本。 文心一言,代码不能运行: 下面是用 Go 语言实现一个递归版本的 TREE-INSERT 过程的代码: package main import "fmt" type TreeNode struct { Val int Left *T ......
文心 导论 算法 chatgpt VS

【算法】【线性表】最长连续序列

1 题目 给定一个未排序的整数数组num,找出最长连续序列的长度。 样例 1: 输入: num = [100, 4, 200, 1, 3, 2] 输出: 4 解释:这个最长的连续序列是 [1, 2, 3, 4]. 返回所求长度 4 2 解答 public class Solution { /** * ......
线性 序列 算法

mbedTLS移植CTR_DRBG随机数算法

一、概述 因使用真随机数需要硬件支持,在硬件不支持时,我们需要通过软件来实现伪随机数生成器。根据NITS SP 800-90A的推荐,推荐的随机数生成为HASH_DRBG、HMAC_DRBG、CTR_DRBG。本文主要介绍如何通过mbedtls移植实现CTR_DRBG生成随机数。 二、 mbedtl ......
随机数 算法 CTR_DRBG mbedTLS DRBG

luogu P9753题解

题意描述 有一个字符串, 请你求出有多少个字串可以经过若干次, 使它变成空串 其中每次操作可以从字符串中删除两个相邻的相同字符,操作后剩余字符串会拼接在一起。 ## 思路1 可以枚举左端点, 再枚举右端点, 一边枚举一边判断是否合法 时间复杂度 $O(n^2)$ 空间复杂度 $O(n)$ ## 思路 ......
题解 luogu P9753 9753

ARC166 B Make Multiples 题解

Link ARC166 B Make Multiples Question 给出 \(N\) 个整数, \(A_1...A_N\) ,还有三个数 \(a,b,c\) 我们可以给 \(A_i\) 加上 \(1\) 需要使得数组 \(A\) 满足,存在一个数是 \(a\) 的倍数,一个数是 \(b\) ......
题解 Multiples Make ARC 166

CF1899 C Yarik and Array 题解

Link CF1899 C Yarik and Array Question 给定一个数组,求数组中连续子数组之和的最大值,但要求子数组必须满足:相邻两项奇偶性不同 输出最大总和 定义 \(F[i]\) 为以 \(i\) 为终点的连续子串的最大加和 \(F[i]\) 初始为 \(a[i]\) 如果 ......
题解 Array Yarik 1899 and

CF1899 E Queue Sort 题解

Link CF1899 E Queue Sort Question 给出一个序列 \(\{a\}\) ,可以进行一种操作:把第一个数放到最后,然后向前移,直到前面的那个数比它小为止 求把序列变成非降序列的次数 Solution 先来考虑无法变成非降序列的情况 如果第一个数最小,在一次操作后,第一个数 ......
题解 Queue 1899 Sort CF

[持续更新][数据结构][算法]涵盖线性表、栈、链表、队列、图、动态规划、分治递归、回溯贪心分支限界、击穿专业课!!!

备考考点整理 内部排序表格 树的主要考点 二叉树的常考 紧紧抓住 \(n_0 = n_2+1\) \(n=n_0+n_1+n_2...n_m\) \(n=n_1+2*n_2+3*n_3...m*n_m\) +1 哈夫曼树没有度为1的结点,也就是\(n_1=0\) 完全二叉树常考 总结 最大岛屿问题( ......
限界 数据结构 队列 专业课 线性

CF1764H Doremy's Paint 2 题解

题目链接 先断环成链,由于对于多组询问不好一起处理,我们先考虑单组询问的处理方式。 一个很暴力的想法是每次模拟题目要求的操作并且最后数颜色,我们这是在通过下标进行操作最后再数颜色,而很多对于下标的操作都是不必要的,考虑直接枚举颜色进行判定。 对于每种颜色,它对于最后答案有贡献当且仅当它可以存活到那个 ......
题解 Doremy 1764H Paint 1764

CF1901 D Yet Another Monster Fight 题解

Link CF1901 D Yet Another Monster Fight Question 现在给你一堆怪物,你拥有法术(一个法术可以连续攻击这n个所有怪物),你可以选择任意一个怪物作为法术的第一个攻击目标(伤害为 \(x\) ),然后除了第一个攻击目标可以任意,其他攻击目标只能为曾经攻击目标 ......
题解 Another Monster Fight 1901

UVA1658 Admiral 题解

Link UVA1658 Admiral Question 给出一个图,找出 \(1 \sim n\) 的两条,使得路径和最小 Solution 可以把点拆开,把除了 \(1\) 和 \(n\) 的点 \(i\) ,拆成 \(i\) 和 \(i'\) ,\(i\) 到 \(i'\) 连一条费用为 \ ......
题解 Admiral 1658 UVA

P2341 受欢迎的牛 G 题解

Link P2341 [USACO03FALL / HAOI2006] 受欢迎的牛 G Question 牛栏中有 \(N\) 头奶牛,和一些 \(M\) 对爱慕关系,A->B 表示 A 爱慕 B。每个奶牛都喜欢自己,被所有奶牛喜欢就是一头明星奶牛,求明星奶牛的数量 Solution 考虑一个强连通 ......
题解 P2341 2341

题解 QOJ1359【Setting Maps】 / accoders::NOI 5682【apers】

https://qoj.ac/contest/506/problem/1359 problem 给定一张大小为 的有向图 。现在告诉你敌军大本营在节点 \(s\) 和友军基地在节点 \(t\)。你需要在每个点上放置一定数量的APERS bounding mine来杀伤敌方步兵。 为了达成战术效果,你 ......
题解 accoders Setting apers 1359

【APP小程序】微信小程序包解密+加解密算法JS逆向

简介 现如今大部分微信小程序抓包看到的数据均是加密的,无法通过常规的业务抓包进行测试,现通过对微信小程序包进行解密,获取到微信小程序源码对加解密算法进行分析。 微信小程序解密 小程序包默认路径:C:\Users\Administrator\Documents\WeChat Files\Applet ......
程序 算法 APP

题解 QOJ1173【Knowledge Is...】 / accoders::NOI 5681【interval】

https://qoj.ac/contest/537/problem/1173 problem 给定 \(n\leq 10^6\) 个区间,你需要求出能够最多选出多少对区间,使得两个区间不交(区间为闭区间)。要求一个区间最多属于一对选出的区间。 solution 这是一般图匹配问题的特殊情况,所以放 ......
题解 Knowledge accoders interval 1173

在自动化测试时,Python常用的几个加密算法,你有用到吗

本文分享自华为云社区《『加密算法』| 自动化测试时基于Python常用的几个加密算法实现,你有用到吗?》,作者:虫无涯 。 写在前边 这几天做自动化测试,遇到一个问题,那就是接口的请求的密码是加密的; 产品的要求是不能使用其他特殊手段,他给提供加密算法,需要在接口请求的时候,使用加密算法处理后的数据 ......
算法 有用 常用 Python

P5048 [Ynoi2019 模拟赛] 题解

题意 给定 \(n\) 个数,有 \(m\) 个询问,每个询问给定 \(l\) 和 \(r\),求出区间 \(l\) 到 \(r\) 中的最小众数出现次数,强制在线。 数据范围:\(n\le 500000\),空间限制:\(62.5MB\)。 思路 这道题的弱化版是 蒲公英,这道题加强的地方在于数据 ......
模拟赛 题解 P5048 5048 2019

P4180 [BJWC2010] 严格次小生成树 题解

原题链接:P4081 题意 给定一颗 \(n\) 个点 \(m\) 条边的树,求这棵树的严格次小生成树。 严格次小生成树指:边权和大于最小生成树,且边权和最小的生成树。 思路 首先可以用克鲁斯卡尔求出这棵树的最小生成树,然后考虑用类似于反悔贪心的思路来做。 对于每一条不在最小生成树中的边 \(u \ ......
题解 小生 P4180 4180 2010

CF1842E Tenzing and Triangle 题解

题意不多赘述。 思路 如果两个所选的三角形有重合部分的话,那么这种情况肯定是不会出现的。因为如果把这两个三角形合成一个大三角形的话,不仅覆盖面积会增大,而且花费的代价还不会多。 于是我们可以想到用 dp 来解决,设 \(dp_{i}\) 表示删完横坐标为 \(0\) 到 \(i\) 中的点的最小代价 ......
题解 Triangle Tenzing 1842E 1842

[ABC304Ex] Constrained Topological Sort 题解

题意 给定一张有向图 \(G\),有 \(n\) 个点和 \(m\) 条边,问是否存在一种拓扑序的排列 \(P\) 使得 \(l_{i} \le p_{i} \le r_{i}\)。 思路 首先对于一条边 \(u \to v\),如果限制满足 \(r_{v}\le r_{u}\) 或者 \(l_{v ......
题解 Constrained Topological Sort ABC

算法--哈希表

哈希表利用空间换时间 当我们要快速判断一个元素是否出现在集合里的时候,就需要考虑哈希表。 哈希表一般会选择三种数据结构,分别是:数组、set(集合)、map(映射)。 数组就是简单的哈希表,但是其大小不能无限开辟 优先使用unordered_set(因为其查找和增删效率最优);若需要集合有序,则用s ......
算法

【题解】AtCoder abc322_f Random Update Query

传送门:https://atcoder.jp/contests/abc332/tasks/abc332_f 容易发现,对于一个位置 $i$,$A_i$ 的最终值是由对 $i$ 的最后一次赋值操作决定的;因此,将所有操作按时间顺序倒过来考虑,则由第 $j$ 次操作决定 $A_i$ 最终值的概率为"在第 ......
题解 AtCoder Random Update Query

车辆检测计数算法

车辆检测计数算法是一个经典的算法,可以使用目标跟踪+目标识别的方案来解决。 但是经过几天的调研后,我发现了一种简单的解决方案。 https://blog.csdn.net/taifyang/article/details/128264192 只需要前后两帧做一个最短路径匹配,然后利用直线与检测点是否 ......
算法 车辆

Unity3D 游戏开发中的随机算法详解

在Unity3D游戏开发中,随机算法是非常重要的一部分。随机算法可以用于生成随机数、随机位置、随机事件等,为游戏增加了一定的变化性和可玩性。本文将详细介绍Unity3D中常用的随机算法,并给出相应的技术详解和代码实现。 对啦!这里有个游戏开发交流小组里面聚集了一帮热爱学习游戏的零基础小白,也有一些正 ......
算法 Unity3D Unity3 Unity 3D

【题解】AtCoder abc332_g Not Too Many Balls

传送门:https://atcoder.jp/contests/abc332/tasks/abc332_g 看完题,第一眼反应为最大流。 建模方式为:以颜色为左部点,盒子为右部点,源点 $S$ 向颜色 $i$ 连一条容量为 $A_i$ 的边,盒子 $j$ 向汇点 $T$ 连一条容量为 $B_j$ 的 ......
题解 AtCoder Balls Many 332