随笔分类 -  acwing算法基础课

摘要:给定一个长度为 N 的数列,求数值严格单调递增的子序列的长度最长是多少。 输入格式 第一行包含整数 N。 第二行包含 N 个整数,表示完整序列。 输出格式 输出一个整数,表示最大长度。 数据范围 1≤N≤1000, −109≤数列中的数≤109 输入样例: 7 3 1 2 1 8 5 6 输出样例: 阅读全文
posted @ 2022-02-24 16:23 VanHope 阅读(39) 评论(0) 推荐(0) 编辑
摘要:给定一个如下图所示的数字三角形,从顶部出发,在每一结点可以选择移动至其左下方的结点或移动至其右下方的结点,一直走到底层,要求找出一条路径,使路径上的数字的和最大。 7 3 8 8 1 0 2 7 4 4 4 5 2 6 5 输入格式 第一行包含整数 n,表示数字三角形的层数。 接下来 n 行,每行包 阅读全文
posted @ 2022-02-23 23:33 VanHope 阅读(44) 评论(0) 推荐(0) 编辑
摘要:有 N 种物品和一个容量是 V 的背包,每种物品都有无限件可用。 第 i 种物品的体积是 vi,价值是 wi。 求解将哪些物品装入背包,可使这些物品的总体积不超过背包容量,且总价值最大。 输出最大价值。 输入格式 第一行两个整数,N,V,用空格隔开,分别表示物品种数和背包容积。 接下来有 N 行,每 阅读全文
posted @ 2022-02-23 12:07 VanHope 阅读(13) 评论(0) 推荐(0) 编辑
摘要:有 N 件物品和一个容量是 V 的背包。每件物品只能使用一次。 第 i 件物品的体积是 vi,价值是 wi。 求解将哪些物品装入背包,可使这些物品的总体积不超过背包容量,且总价值最大。 输出最大价值。 输入格式 第一行两个整数,N,V,用空格隔开,分别表示物品数量和背包容积。 接下来有 N 行,每行 阅读全文
posted @ 2022-02-23 11:21 VanHope 阅读(30) 评论(0) 推荐(0) 编辑
摘要:动物王国中有三类动物 A,B,C,这三类动物的食物链构成了有趣的环形。 A 吃 B,B 吃 C,C 吃 A。 现有 N 个动物,以 1∼N 编号。 每个动物都是 A,B,C 中的一种,但是我们并不知道它到底是哪一种。 有人用两种说法对这 N 个动物所构成的食物链关系进行描述: 第一种说法是 1 X 阅读全文
posted @ 2022-02-22 23:19 VanHope 阅读(33) 评论(0) 推荐(0) 编辑
摘要:单链表/数组模拟 #include<iostream> using namespace std; const int N = 100010; int e[N], ne[N]; // e[i]表示第i数的值,ne[i]表示第i个数后面的数 int head, idx; // head表示链表头,idx 阅读全文
posted @ 2022-02-22 21:23 VanHope 阅读(37) 评论(0) 推荐(0) 编辑
摘要:给定一个长度为n的字符串,再给定m个询问,每个询问包含四个整数 l1,r1,l2,r2 ,请你判断[ l1,r1 ]和[ l2,r2 ]这两个区间所包含的字符串子串是否完全相同。 字符串中只包含大小写英文字母和数字。 输入格式 第一行包含整数n和m,表示字符串长度和询问次数。 第二行包含一个长度为n 阅读全文
posted @ 2022-02-22 21:18 VanHope 阅读(31) 评论(0) 推荐(0) 编辑
摘要:题目描述: 给定一个包含n个点(编号为1~n)的无向图,初始时图中没有边。 现在要进行m个操作,操作共有三种: “C a b”,在点a和点b之间连一条边,a和b可能相等; “Q1 a b”,询问点a和点b是否在同一个连通块中,a和b可能相等; “Q2 a”,询问点a所在连通块中点的数量; 输入格式 阅读全文
posted @ 2022-02-22 17:49 VanHope 阅读(21) 评论(0) 推荐(0) 编辑
摘要:一共有 n 个数,编号是 1∼n,最开始每个数各自在一个集合中。 现在要进行 m 个操作,操作共有两种: M a b,将编号为 a 和 b 的两个数所在的集合合并,如果两个数已经在同一个集合中,则忽略这个操作; Q a b,询问编号为 a 和 b 的两个数是否在同一个集合中; 输入格式 第一行输入整 阅读全文
posted @ 2022-02-22 17:35 VanHope 阅读(33) 评论(0) 推荐(0) 编辑
摘要:在给定的 N 个整数 A1,A2……AN 中选出两个进行 xor(异或)运算,得到的结果最大是多少? 输入格式 第一行输入一个整数 N。 第二行输入 N 个整数 A1~AN。 输出格式 输出一个整数表示答案。 数据范围 1≤N≤105, 0≤Ai<231 输入样例: 3 1 2 3 输出样例: 3 阅读全文
posted @ 2022-02-22 17:23 VanHope 阅读(54) 评论(0) 推荐(0) 编辑
摘要:实现一个单链表,链表初始为空,支持三种操作: 向链表头插入一个数; 删除第 k 个插入的数后面的数; 在第 k 个插入的数后插入一个数。 现在要对该链表进行 M 次操作,进行完所有操作后,从头到尾输出整个链表。 注意:题目中第 k 个插入的数并不是指当前链表的第 k 个数。例如操作过程中一共插入了 阅读全文
posted @ 2022-02-11 22:08 VanHope 阅读(25) 评论(0) 推荐(0) 编辑
摘要:题目 给定 n 个区间 [li,ri],要求合并所有有交集的区间。 注意如果在端点处相交,也算有交集。 输出合并完成后的区间个数。 例如:[1,3]和[2,6]可以合并为一个区间[1,6]。 输入格式 第一行包含整数n。 接下来n行,每行包含两个整数 l 和 r。 输出格式 共一行,包含一个整数,表 阅读全文
posted @ 2022-02-11 20:41 VanHope 阅读(233) 评论(0) 推荐(0) 编辑