摘要: VHDL概述 实体说明 不论是简单的数字电路还是一个微处理器或者系统,都由实体构成,实体的结构 ENTITY 实体名 IS [类属参数说明]; [端口说明]; END ENTITY 实体名 以上就是一个基本设计单元的实体说明 类属参数说明 必须放在端口说明之前,用于指定参数 端口说明 端口说明是对基 阅读全文
posted @ 2023-04-11 15:19 我就一水 阅读(549) 评论(0) 推荐(0) 编辑
摘要: Trie树 Trie字符串统计 维护一个字符串集合,支持两种操作: I x 向集合中插入一个字符串 $x$; Q x 询问一个字符串在集合中出现了多少次。 共有 $N$ 个操作,所有输入的字符串总长度不超过 $10^5$,字符串仅包含小写英文字母。 输入格式 第一行包含整数 $N$,表示操作数。 接 阅读全文
posted @ 2023-04-07 16:54 我就一水 阅读(14) 评论(0) 推荐(0) 编辑
摘要: 完全背包 有 N 种物品和一个容量是 V 的背包,每种物品都有无限件可用。 第 i 种物品的体积是 $v_i$,价值是 $w_i$。 求解将哪些物品装入背包,可使这些物品的总体积不超过背包容量,且总价值最大。 输出最大价值。 输入格式 第一行两个整数,N,V,用空格隔开,分别表示物品种数和背包容积。 阅读全文
posted @ 2023-04-05 18:26 我就一水 阅读(20) 评论(0) 推荐(0) 编辑
摘要: 并查集 合并集合 一共有 n 个数,编号是 1∼n,最开始每个数各自在一个集合中。 现在要进行 m 个操作,操作共有两种: M a b,将编号为 a 和 b 的两个数所在的集合合并,如果两个数已经在同一个集合中,则忽略这个操作; Q a b,询问编号为 a 和 b 的两个数是否在同一个集合中; 输入 阅读全文
posted @ 2023-04-05 17:19 我就一水 阅读(23) 评论(0) 推荐(0) 编辑
摘要: 双链表 双链表有两个指针,一个指向前一个指向后, 数组模拟链表 实现思想 双链表有两个指针,一个指向前一个指向后,故定义三个数组 $l[N], r[N], val[N]$ $l[N] 指向的是当前节点的前一个节点的位置$, $r[N] 指向的是当前节点的后一个节点的位置$ 偷个懒, 下标为0的点是最 阅读全文
posted @ 2023-03-18 15:53 我就一水 阅读(33) 评论(0) 推荐(0) 编辑
摘要: 以下介绍的是数组模拟链表,传统的结构体指针链表,有时候存在查询速度慢的问题,故本文记录的是一种比较快的链表存储方式,即数组模拟链表。 单链表 思想 需要两个数组、一个标志和一个头指针,一个数组用于存储内容,另一个数组用与存储当前节点的下一节点下表,标志用于存储当前用到哪个下标。 注意添加节点时,一般 阅读全文
posted @ 2023-03-18 15:44 我就一水 阅读(33) 评论(0) 推荐(0) 编辑
摘要: 整数离散化 ==描述:== 有这么一个数字序列,其中数字的值域非常大,但是个数有限,如何存储? 这时候需要用到离散化的方法(或者说哈希),下面介绍的是保序的离散化(下标小的一定在前面,大的一定在后面) 两个关键问题 原数组可能存在相同数字(去重) 如何算出x离散化后的值 (二分) 模板 vector 阅读全文
posted @ 2023-03-18 15:03 我就一水 阅读(28) 评论(0) 推荐(0) 编辑
摘要: n的二进制表示中第k位是几 思想 先把第k位移到最后一位 实现方式是用右移运算 n >> k 再看最低位是几 假设前一步得到x, 最低位为 x & 1 代码 # include<iostream> using namespace std; int main() { int n, k; cin >> 阅读全文
posted @ 2023-03-18 14:56 我就一水 阅读(32) 评论(0) 推荐(0) 编辑
摘要: 题目 给定 $n$ 个区间 $[l_i,r_i]$,要求合并所有有交集的区间。 注意如果在端点处相交,也算有交集。 输出合并完成后的区间个数。 例如:$[1,3]$ 和 $[2,6]$ 可以合并为一个区间 $[1,6]$。 输入格式 第一行包含整数 $n$。 接下来 $n$ 行,每行包含两个整数 $ 阅读全文
posted @ 2023-03-18 14:55 我就一水 阅读(51) 评论(0) 推荐(0) 编辑
摘要: 前缀和 一维 例题—— 前缀和 输入一个长度为 n 的整数序列。 接下来再输入 m 个询问,每个询问输入一对 l, r 。 对于每个询问,输出原序列中从第 l 个数到第 r 个数的和。 输入格式 第一行包含两个整数 n 和 m。 第二行包含 n 个整数,表示整数数列。 接下来 m 行,每行包含两个整 阅读全文
posted @ 2023-03-18 14:52 我就一水 阅读(38) 评论(0) 推荐(0) 编辑