AND

分治,倍增

分治 核心思想 自上而下通过递归不断地将大问题拆分成两个或多个子问题,直至被拆分出的子问题可以通过简单的方法解决 然后再自上而下地用子问题的解求解大问题的解 最终得出初始问题的解 思路: 每次将要修改的区间的分为左右两边,分别计算出要改变的数量,那么不断分治取min直至左右两边区间变为1(因为\(n ......

动态规划(DP)概述

搜索,dfs依次枚举每一步向上走多少台阶,最后统计有多少可行的方案。(小规模可以,大规模gg) 组合数学 递归 考虑最后一步,我们只能从第9级或者第8级走过去。 对于任意的\(n\geq 2\)时有\(f(n) = f(n-2) + f(n - 1)\) 如果不递归 台阶数 1 2 3 4 5 6 ......
动态 DP

博弈论

简单博弈论 必胜态和必败态 假设游戏状态为有向无环图(即游戏状态可以被枚举完同时不会落入重复状态中) 必胜: 存在一个后继为必败态(两个状态均是先手状态,即当前局面下谁先走下一步) 必败: 不存在一个后继为必败态, 所有后继必胜 例: 纠正条件是每次可以往上或往左移动一格 分析: 定义当前每步必胜态 ......
博弈论

字符串

字符串 字符串匹配问题 在字符串s中查找某个字符串p是否出现 朴素做法 枚举s中每个长度为m的子串,然后判断这些子串和p一不一样 怎么判断一不一样? 一位一位比较,这时总的复杂度为\(O(nm)\) 字符串哈希优化,使用哈希可以做到\(O(n+m)\)的时间复杂度 KMP用线性复杂度解决字符串匹配问 ......
字符串 字符

快速幂,快速乘,矩阵乘

快速幂,快速乘,矩阵乘 快速幂 计算\(a^n(n\geqslant0)\),一般会对答案取个模 例如计算\(5^{11}\),考虑11二进制\((1011)_2\)有\(5^{11} = 5^8*5^2*5^1\) 将n的二进制中为1的位置对应的a的\(2^k\)次幂相乘就能得到最终结果 可以用\ ......
矩阵

换根树形动态规划

换根树形动态规划 考虑以1为根的情况,size[i]表示以i为根的子树中有多少个点,f[i]表示考虑以i为根的子树,i到子树其他所有点的距离的和; 假设j是i的儿子,以j为根的子树对f[i]的贡献为f[j]+size[j] \[f[i] = \sum_{j\in son(i)}(f[j]+size[ ......
树形 动态

排序

排序 快排,归并排序之前已经熟悉不再赘述 计数排序 复杂度O(n+m) 计数排序适于值域范围较小的数字排序,核心思想: 每个数字出现几次 统计完每个元素出现次数后,求一边前缀和,就知道了每个数字排完序后的序列中出席拿的为止的范围(第几小到第几小都是这个数字) 把数字填入相应为止 保证稳定性: 相同数 ......

概率dp

概率dp f[x]表示能走到x号城市的概率, f[1] = 1 考虑从x号城市出发到y号城市的高速公路, 通过x号城市走到y号城市的概率有多大? f[y] += f[x] / d[x], d[x]表示从x号城市出发的高速公路一共有多少条; 能走到y号城市的概率 \[f[y] = \sum_{x\in ......
概率

unzip命令

解压缩zip格式文件 语法格式:unzip 参数 压缩包 常用参数 -a 对文本进行必要的字符转换 -L 将压缩包内文件名改为小写 -b 不要对文本进行任何字符转换 -n 解压缩时不覆盖已有文件 -c 适当转换字符后输出解压缩结果 -p 使用密码加密 -C 严格区分大小写 -q 静默执行模式 -d ......
命令 unzip

Python实现dijkstra算法

dijkstra.py: import yaml import copy class Dijkstra: def __init__(self, path, start_node): self.data = self.config_reader(path) self.start_node = star ......
算法 dijkstra Python

负载均衡-加权轮询算法

背景 A项目部署在三台机器,A机器(4c2g)、B机器(2c2g)、C机器(1c2g) 如何才让请求** 聪明 **地分发在三台机器? 负载均衡分类 基于硬件的负载均衡:比如F5等专门的负载均衡设备,通常具有更强大的性能和功能,能够处理大规模的流量和应用需求。 基于软件的负载均衡:比如Nginx、H ......
算法

[Codeforces] CF1811E Living Sequence

CF1811E Living Sequence 这道题洛谷题解的思路比我的更好,可以参考一下题解,但是没人提到我这种做法 题意 给定一个正整数 \(k\) \((1\le k\le10^{12})\),请你输出第 \(k\) 个数字里没有 4 的正整数。 思路 设 \(f_i\) 表示前 \(10^ ......
Codeforces Sequence Living 1811E 1811

kafka启动闪退(zookeeper timeout)的解决办法

1.情景展示 在关闭kafka后,再次运行经常会出现闪退的情况。 2.具体分析 经过截屏发现:原来是kafka连接zookeeper超时,导致kafka启动失败。 kafka.zookeeper.ZooKeeperClientTimeoutException: Timed out waiting f ......
zookeeper timeout 办法 kafka

扩展 KMP/exKMP(Z 函数)

模板链接 QwQ Z 函数,又称扩展 KMP (exkmp),可以 \(O(n)\) 求出一个字符串的所有后缀与这个字符串的 LCP 长度。 怎么叫做扩展 KMP 但是前置知识没有 KMP,Z 函数的做法与 Manacher 有着异曲同工之妙,即存下了目前已扩展到的右端点最靠右端的后缀 \(i\) ......
函数 exKMP KMP

CF1740H MEX Tree Manipulation

CF1740H MEX Tree Manipulation 定义一棵树上每个节点的值为其所有儿子的值的 MEX,叶子节点的值为 \(0\)。 现在有一个初始只有节点 \(1\) 的树,每次输入一个 \(x_i\) 代表加入一个点 \(i+1\),它的父亲为 \(x_i\),求加入这个点之后树上所有点 ......
Manipulation 1740H 1740 Tree MEX

CF1178G The Awesomest Vertex

CF1178G The Awesomest Vertex 给定一棵根为 \(1\) 的有根树,每个节点有两个权值 \(a[i]\) 和 \(b[i]\) 。定义 \(R(v)\) 为 \(v\) 祖先的集合(包括自己),则一个节点 \(v\) 有多棒取决于其真棒程度,真棒程度是这样定义的: \[\l ......
Awesomest Vertex 1178G 1178 The

第五次作业

这个作业属于哪个课程 https://edu.cnblogs.com/campus/zjlg/23rjjsjc 这个作业的目标 下载并体验一个APP香水图鉴,完成对应的问卷 姓名-学号 王磊-2021339932030 软件注册截图 完成问卷截图 ......

P1036 [NOIP2002 普及组] 选数

原题链接 总结 1.搜索其实就是全部遍历一遍,只不过可以把遍历过的,以及接下来一看就知道不用遍历的不去遍历,也就是剪枝 2.一定要明确自己所设的搜索函数各个变量的含义!! 代码 #include<bits/stdc++.h> using namespace std; int n,k; int a[3 ......
P1036 1036 NOIP 2002

系统设计-缓存篇

缓存:数据库成为瓶颈后,动态数据的查询要如何加速? 缓存可以有多层,比如上面提到的静态缓存处在负载均衡层,分布式缓存处在应用层和数据库层之间,本地缓存处在应用层。我们需要将请求尽量挡在上层,因为越往下层,对于并发的承受能力越差; 缓存命中率是我们对于缓存最重要的一个监控项,越是热点的数据,缓存的命中 ......
缓存 系统

Manacher

Manacher 最长回文子串问题 一个字符串从左往右看和从右往左看是一样的叫回文串 回文串可以按长度的奇偶性分为奇数长度和偶数长度回文串 最长回文子串指对于任意一个给定的字符串,我们要求出这个字符串的最长回文子串 暴力 \(O(n^3)\) 枚举所有子串,检查当前枚举到的子串是否为回文串,最后从符 ......
Manacher

zip命令

压缩文件 语法格式:zip参数 目标文件名.zip 源文件或目录名 常用参数 -A 自动解压缩文件 -n 不压缩具有特定字符串的文件 -b 设置暂存文件的目录 -q 静默执行模式 -c 添加注释信息到压缩文件 -r 递归处理所有子文件 -d 更新压缩包内文件 -S 包含系统和隐藏文件 -F 尝试修复 ......
命令 zip

flutter常用的音乐播放器库

audioplayers: 优势:audioplayers 是一个简单易用的音乐播放器库,支持主流平台(Android、iOS)并提供了丰富的功能,比如播放、暂停、快进、音量控制等。 缺点:audioplayers 的定位相对较低级,可能需要自行处理一些高级功能(如音效处理、音频分析等)。此外,由于 ......
播放器 常用 flutter 音乐

(15-418)Lecture 4 Parallel Programming Basics

并行编程的步骤 可以把并行编程分为下图中的四个步骤: Decmposition 把问题分解为能够并行化的任务,Amdahl定律指出,程序的串行部分制约着并行程序的加速比。 要将一张照片的每个象素的亮度翻倍、计算所有象素的平均值,由于这两部分都是可并行化的,所以加速比可以接近理想情况: Assignm ......
Programming Parallel Lecture Basics 418

(15-418)Lecture 5 Performance Optimization Part 1 Work Distribution and Scheduling

高性能编程的三个目标: 执行单元的负载均衡 减少线程、进程间的交流 减少额外开销 尽量先实现一个最简单的解决方案,之后对其扩展以提高性能。 Balancing the workload 理想情况下,所有处理器在整个程序执行期间都忙于计算。 根据Amdahl定律,程序中的串行部分的比例对最大加速比有很 ......

CSP2023游记

CSP2023游记 8:25 手忙脚乱地建好了目录文件、配置好了 DEV-C++ 的语法环境。 8:30 打开题目 8:45 看到 T1 发现不如去年简单,有些慌张,我选择了先看 T2。 9:00~9:30 发现 T2 其实就是一个贪心,于是用了半个小时做出来了。 9:30~9:50 回看 T1,发 ......
游记 2023 CSP

CF1519F Chests and Keys

CF1519F Chests and Keys 给定 \(n,m\) 表示存在 \(n\) 个宝箱和 \(m\) 把钥匙,第 \(i\) 把钥匙需要 \(b_i\) 元,第 \(i\) 个宝箱内部有 \(a_i\) 元。 现在进行一场游戏,Bob 是本场游戏的玩家,而 Alice 则是场景布置者,A ......
Chests 1519F 1519 Keys and

TensorIR: An Abstraction for Automatic Tensorized Program Optimization

Abstract 在多种多样的设备上部署深度学习模型是一个重要的话题,专用硬件的蓬勃发展引入了一系列加速原语和多维张量计算方法。这些新的加速原语和不断出现的新的机器学习模型,带来了工程上的巨大挑战。本文提出了TensorIR,是为了优化这些有张量计算原语的张量化程序而设计的编译器抽象。TensorI ......

第五次作业

这个作业来自哪个课程 https://edu.cnblogs.com/campus/zjlg/23rjjsjc/homework/13050 这个作业的目标是什么 下载香水图鉴app、体验并提交问卷 姓名—学号 樊嘉昕——202133040009 ......

vue+element 上传文件及文件夹

有需求需要做一个上传压缩包及文件夹的需求,记性不好,记录一下。 HTML 使用的element的upload和form表单,dropdown下拉菜单 <div> <el-col :span="24"> <el-form-item label="材料路径:" prop="fileName"> <el- ......
文件 文件夹 element vue

just_audio音频播放器

代码 import 'package:flutter/material.dart'; import 'package:just_audio/just_audio.dart'; void main() { runApp(MyApp1()); } class MyApp1 extends Statele ......
just_audio 播放器 音频 audio just
共332088篇  :681/11070页 首页上一页681下一页尾页