
ACM
GenmCai
把自己喜欢的东西做到最好!
展开
-
UVA11992(线段树)
题目题意road命令连接第A坐标和第B坐标的点。而line则是查看纵坐标C拉出的扫描线过几个联通块,要求求联通块中的数量和是多少。(具体的可以查看原题)题解其实是线段树一个简单的模拟,即并查集找联通块和联通块中点的数量,然后每次更新的时候,删除A点和B点的信息,重新建立A点和B点连接后的信息就行了。#include<iostream>#include<cstring...原创 2019-12-30 00:10:56 · 322 阅读 · 0 评论 -
CodeForces - 12D Ball 线段树
题目题意emmmm,就是题目描述的女性很奇葩,她们去参加国王举办的舞会,而每个女士有B、I、R三种属性,如果她们得知舞会上存在一个比自身所有属性都要高,那么她就会选择跳楼。。。问有多少个要跳楼的女士。题解其实很简单,即按照B进行从大到小排序,然后线段树对比I大的区间进行查询最大值,如果最大值大于自身的R那么这位正在查询的女士选择跳楼。最后把这么女士的信息插入到线段树的I点给予R值,即查完...原创 2019-12-30 00:02:28 · 229 阅读 · 0 评论 -
POJ - 2777 Count Color 线段树+位运算
题目Count ColorTime Limit: 1000MS Memory Limit: 65536KTotal Submissions: 55483 Accepted: 16628DescriptionChosen Problem Solving and Program design as an optional course, you are required to solve...原创 2019-12-29 23:59:22 · 238 阅读 · 0 评论 -
ACM-ICPC 2018 徐州赛区网络预赛A题
【题目】【题意】英语不好,如果翻译没差多少的话,出题人应该是个东方厨,也算是同道中人了。即有$2^k-1$个编号的面具,面具的编号为$0 \dots 2^k-1$。然后有N个人围成一圈,每个人都带个面具(面具编号可以重复),让相邻的两个人的面具编号值异或后取反不为0的方法有多少种。【题解】两个数异或取反后为0,即取反之前的数的二进制全都是由1组成,也就是两个数是互补的,而能与一个数互...原创 2019-12-26 18:39:41 · 328 阅读 · 0 评论 -
题解 | 《算法竞赛进阶指南》棋盘覆盖
【题目】给出一张n×n(n≤100)的国际象棋棋盘,其中被删除了一些点,问可以使用多少1*2的多米诺骨牌进行掩盖。【题意】题意简单,不做多说明,多米诺骨牌可以理解为长方形的方块。【题解】仔细一想,可以发现能用二分图来做。即可以把每个位置的点进行重新编号,相邻的两点具有不同的性质。比如说在2×2的图内第一个点(1,1)(1,1)(1,1)标记为1,它是奇数,那么与它相邻的(1,2)(1,2...原创 2019-11-13 21:14:30 · 525 阅读 · 0 评论 -
题解 | 《算法竞赛进阶指南》递归实现组合型枚举
【题目】从 1~n 这 n 个整数中随机选出 m 个,输出所有可能的选择方案。n>0n \gt 0n>0, 0≤m≤n0 \leq m \leq n0≤m≤n, n+(n−m)≤25n+(n-m)\leq 25n+(n−m)≤25。按照从小到大的顺序输出所有方案,每行1个。首先,同一行内的数升序排列,相邻两个数用一个空格隔开。其次,对于两个不同的行,对应下标的数一一比较,字典序较...原创 2019-11-18 16:35:38 · 491 阅读 · 0 评论 -
题解 | 《算法竞赛进阶指南》递归实现排列型枚举
【题目】把 1∼n1\sim n1∼n 这 n(n<10)n(n \lt 10)n(n<10)个整数排成一行后随机打乱顺序,输出所有可能的次序。按照从小到大的顺序输出所有方案,每行1个。 首先,同一行相邻两个数用一个空格隔开。其次,对于两个不同的行,对应下标的数一一比较,字典序较小的排在前面。【题解】循环遍历1-N个数,优先遍历小的数,让其尽可能的选遍历到的数。并需要用一个标记...原创 2019-11-18 16:35:05 · 388 阅读 · 0 评论 -
题解 | 《算法竞赛进阶指南》递归实现指数型枚举
【题目】从 1∼n1\sim n1∼n这n(n≤16)n (n \leq 16)n(n≤16)个整数中随机选取任意多个,输出所有可能的选择方案。每行一种方案。同一行内的数必须升序排列,相邻两个数用恰好1个空格隔开。对于没有选任何数的方案,输出空行。本题有自定义校验器(SPJ),各行(不同方案)之间的顺序任意。【题解】DFS,即深度优先搜索。深度、优先、搜索。即可以把单行的输出联想成一条线...原创 2019-11-18 16:33:57 · 406 阅读 · 0 评论 -
题解 | 《算法竞赛进阶指南》A Tiny Problem with intergers
【题目】给定长度为N的数列A,然后输入M行操作指令。第一类指令形如“C l r d”,表示把数列中第l~r个数都加d。第二类指令形如“Q X”,表示询问数列中第x个数的值。对于每个询问,输出一个整数表示答案。【题解】区间更新,单点查询,第一反应要么树状数组,要么线段树。个人更擅长线段树,就说说线段树吧。线段树是一种数据结构,是一种二叉搜索树,它将一个区间划分成一些单元区间,每个单元区间...原创 2019-11-18 16:30:45 · 399 阅读 · 0 评论 -
题解 | 《算法竞赛进阶指南》 没有上司的舞会
【题目】Ural大学有N名职员,编号为1~N。他们的关系就像一棵以校长为根的树,父节点就是子节点的直接上司。每个职员有一个快乐指数,用整数 HiHi 给出,其中 1≤i≤N1\leq i\leq N1≤i≤N。现在要召开一场周年庆宴会,不过,没有职员愿意和直接上司一起参会。在满足这个条件的前提下,主办方希望邀请一部分职员参会,使得所有参会职员的快乐指数总和最大,求这个最大值。【题解】...原创 2019-11-17 21:31:22 · 383 阅读 · 0 评论 -
题解 | 《算法竞赛进阶指南》 你能回答这些问题吗(三)
【题目】给定长度为N的数列A,以及M条指令,每条指令可能是以下两种之一:“1 x y”,查询区间 [x,y] 中的最大连续子段和,即 maxx≤l≤r≤y(∑ri=lrA[i])max_{x \leq l \leq r \leq y}({\sum_{r_i=l}^{r}A[i]})maxx≤l≤r≤y(∑ri=lrA[i])“2 x y”,把 A[x] 改成 y。对于每个查询指令,输...原创 2019-11-17 21:30:34 · 322 阅读 · 0 评论 -
题解 | 《算法竞赛进阶指南》 蒙德里安的梦想
【题目】Squares and rectangles fascinated the famous Dutch painter Piet Mondriaan. One night, after producing the drawings in his ‘toilet series’ (where he had to use his toilet paper to draw on, for all...原创 2019-11-13 21:26:59 · 420 阅读 · 0 评论 -
题解 | 《算法竞赛进阶指南》最大子序和
【题目】输入一个长度为n的整数序列,从中找出一段不超过m的连续子序列,使得整个序列的和最大。例如 1,-3,5,1,-2,3当m=4时,S=5+1-2+3=7当m=2或m=3时,S=5+1=6【题解】一开始没有想到可以用单调队列,以为能用dp之类的过过掉,但是莫得成功,寻思之后再想想。而单调队列的做法,其实原理很简单,便是算出N个数的前缀和ans[1],ans[2]…ans[N]ans...原创 2019-11-13 21:26:10 · 367 阅读 · 0 评论 -
题解 | 《算法竞赛进阶指南》前缀统计
【题目】给定N个字符串S1,S2…SNS_1,S_2 \dots S_NS1,S2…SN,接下来进行M次询问,每次询问给定一个字符串T,求S1∼SNS_1 \sim S_NS1∼SN中有多少个字符串是T的前缀。输入字符串的总长度不超过10610^6106,仅包含小写字母。【题解】Trie的裸题,用C++11(clang++ 3.9)疯狂出现段错误,结果C++14(g++ 5.4)提...原创 2019-11-13 21:25:39 · 453 阅读 · 0 评论 -
题解 | 《算法竞赛进阶指南》一个简单的整数问题
【题目】You have N integers,A1,A2,...,ANA_1,A_2,...,A_NA1,A2,...,AN.You need to deal with two kinds of operations. One type of operation is to add some given number to each number in a given interval....原创 2019-11-13 21:24:48 · 249 阅读 · 0 评论 -
题解 | 《算法竞赛进阶指南》64位整数乘法
【题目】求 a 乘 b 对 p 取模的值,其中 KaTeX parse error: Got function '\left' with no arguments as superscript at position 22: … a,b,p \leq 10^\̲l̲e̲f̲t̲(18\right)【题解】普通的a×ba \times ba×b,在这个数据范围肯定是超出的,就算可以取余,但最坏...原创 2019-11-13 21:15:54 · 473 阅读 · 0 评论 -
题解 | 《算法竞赛进阶指南》a^b
【题目】求 a 的 b 次方对 p 取模的值,其中0≤a,b,p≤1090 \leq a,b,p \leq 10^90≤a,b,p≤109【题解】因为数字过大,不管是精度还是时间都不够,所以得用快速幂。即利用KaTeX parse error: Got function '\left' with no arguments as superscript at position 17: …^...原创 2019-11-13 21:15:13 · 378 阅读 · 0 评论 -
题解 | 《算法竞赛进阶指南》银河英雄传说
【题目】公元五八○一年,地球居民迁移至金牛座α第二行星,在那里发表银河联邦创立宣言,同年改元为宇宙历元年,并开始向银河系深处拓展。宇宙历七九九年,银河系的两大军事集团在巴米利恩星域爆发战争。泰山压顶集团派宇宙舰队司令莱因哈特率领十万余艘战舰出征,气吞山河集团点名将杨威利组织麾下三万艘战舰迎敌。杨威利擅长排兵布阵,巧妙运用各种战术屡次以少胜多,难免恣生骄气。在这次决战中,他将巴米利恩星域战场划...原创 2019-11-13 21:13:45 · 439 阅读 · 0 评论 -
题解 | 《算法竞赛进阶指南》程序自动分析
【题目】在实现程序自动分析的过程中,常常需要判定一些约束条件是否能被同时满足。考虑一个约束满足问题的简化版本:假设 ????1, ????2, ????3, ⋯ 代表程序中出现的变量,给定 ???? 个形如 ???????? = ???????? 或 ???????? ≠ ???????? 的变量相等/不等的约束条件,请判定是否可以分别为每一个变量赋予恰当的值,使得上述所有约束条件同时被满足。例如,一个问题中的约束条件为: ????1 = ????2, ????2 = ????3, ????3...原创 2019-11-13 21:12:27 · 480 阅读 · 0 评论