摘要: 题意:给定一个序列,多次询问 将a数组从小到大排序,下面那个值只有不超过32种,于是预处理f[i][j],表示分母为i时,aj/i的前缀和是多少。 然后对于一个给定的p,一定将分母划分成了一些连续的段落,通过枚举这些分母,二分获得分母变化的位置,将区间和累计进答案。 注意,对于给定的p,一个分母控制阅读全文
posted @ 2018-05-18 23:14 AutSky_JadeK 阅读(14) 评论(0) 编辑
摘要: 题意:给你一个台球桌面,一个台球的初始位置和初始速度方向(只可能平行坐标轴或者与坐标轴成45度角),问你能否滚进桌子四个角落的洞里,如果能,滚进的是哪个洞。 如果速度方向平行坐标轴,只需分类讨论,看它是否在台球桌的边沿即可。 如果速度方向和坐标轴成45度,如下图 将整个过程展开, 设出射方向与当前所阅读全文
posted @ 2018-05-18 11:58 AutSky_JadeK 阅读(23) 评论(0) 编辑
摘要: 题意:给你一个序列,让你找一个k,倘若把大于等于k的元素都标记为不可用,那么剩下的所有元素形成的段的长度相同,并且使得段的数量尽量大。如果有多解,输出k尽量小的。 把元素从大到小排序插回原位置,用一个set维护前驱后继,相当于删除一个原有的段,然后将这个段切成两半,产生两个新的段。维护这次操作后所有阅读全文
posted @ 2018-05-18 11:49 AutSky_JadeK 阅读(49) 评论(0) 编辑
摘要: 题意:给你一棵树,让你切掉尽可能多的边,使得产生的所有连通块都有偶数个结点。 对于一棵子树,如果它有奇数个结点,你再从里面怎么抠掉偶数结点的连通块,它都不会变得合法。如果它本来就有偶数个结点,那么你怎么抠,都是合法的。 所以,我们只需要切断所有有偶数结点的子树的父边即可。 然后再判一遍最后是否仍是合阅读全文
posted @ 2018-05-18 11:45 AutSky_JadeK 阅读(18) 评论(0) 编辑
摘要: 题意:定义,对于a数组的一个子区间[l,r],f[l,r]定义为对该子区间执行f操作的值。显然,有f[l,r]=f[l,r-1] xor f[l+1,r]。又定义ans[l,r]为满足l<=i<=j<=r的f[i,j]的最大值。多次询问你某些区间的ans值。 ans=max(f[l,r],ans[l阅读全文
posted @ 2018-05-16 11:04 AutSky_JadeK 阅读(45) 评论(3) 编辑
摘要: 题意:给你一个分数,问你在b进制下能否化成有限小数。 条件:p/q假如已是既约分数,那么如果q的质因数分解集合是b的子集,就可以化成有限小数,否则不能。 参见代码:反复从q中除去b和q的公因子部分,并缩小该公因子,继续尝试。直到q没有和b的公共因子为止,如果q变成了1,那么有限,否则无限。阅读全文
posted @ 2018-05-16 10:58 AutSky_JadeK 阅读(14) 评论(0) 编辑
摘要: 题意: 给你一个空的可重集,支持以下操作: 向其中塞进一个数x(不超过100000), 询问(x,K,s):如果K不能整除x,直接输出-1。否则,问你可重集中所有是K的倍数的数之中,小于等于s-x,并且与x异或结果最大的数是多少(如果不存在这样的数,也输出-1)。 建立100000个二进制Trie,阅读全文
posted @ 2018-05-15 20:39 AutSky_JadeK 阅读(27) 评论(0) 编辑
摘要: 题意:给你3个字符串,3个人各对自己的字符串执行n轮操作,每一次选择一个字符变为任意一个和原来不同的字符。最后问你谁能使自己的串中的任意重复子串出现的次数最大化。 显然只需关注字符而非子串。 枚举每个字符,尽力使其他字符变成它。 只有一种情况需要注意!如果字符a的出现次数等于len,并且n=1,那么阅读全文
posted @ 2018-05-15 20:30 AutSky_JadeK 阅读(7) 评论(0) 编辑
摘要: 题意:让你对[0,255]这个序列任意划分成一些不重叠的子段,每个子段的大小不超过K。给你n个不超过255的数,让你将每个数替换成它所在子段的任意一个元素,使得最终这个n个数的序列的字典序最小。 p[x]代表x作为代表元素的话,其所控制的区间的最后一个元素是谁。 读入一个数a的时候,在[0,255]阅读全文
posted @ 2018-05-09 12:02 AutSky_JadeK 阅读(43) 评论(0) 编辑
摘要: 题意:给你一个4*n的网格,保证n为奇数,让你在其中放k个障碍物,不能放在边界的格子上,使得从左上角走到右下角的最短路的方案数,恰好等于从左下角走到右上角的最短路的方案数。 k为偶数时,以纵向为对称轴进行摆放即可。 k为奇数且小于等于n-2时,如下图横向对称摆放: .................阅读全文
posted @ 2018-05-09 11:56 AutSky_JadeK 阅读(29) 评论(1) 编辑
摘要: 题意:给你一条直线以及初始时刻这条直线上的一些人的坐标,以及他们的速度矢量。让你对每个人计算他在过去无限远到将来无限远的时间内会与多少人处于同一个点,然后对每个人的这个值求和。 列方程组:两个人i,j相撞的条件是: a*x(i)+b+t*vy(i)=a*xj+b+t*vy(j) x(i)+t*vx(阅读全文
posted @ 2018-05-02 00:13 AutSky_JadeK 阅读(32) 评论(0) 编辑
摘要: 题意: n个板,每个板有重量和强度w和s,还有PDV值(上面的总重量-该板的强度) 对于某种叠放方式,PDV的最大值为其代表值 求该值的最小值 考虑只有两个板的情况:a和b,很显然下面的比上面的容易损坏,所以下面的PDV大。假设a在上面,其PDV值 = pdvb = wa - sb。假设b在上面,其阅读全文
posted @ 2018-05-01 17:22 AutSky_JadeK 阅读(8) 评论(0) 编辑
摘要: 题意:两地之间有n条不相交路径,第i条路径由a[i]座桥组成,每座桥有一个损坏概率,让你确定一个对所有桥的检测顺序,使得检测所需的总期望次数最小。 首先,显然检测的时候,是一条路径一条路径地检测,跳跃地检测没有意义。考虑已经排好的某个路径的顺序,相邻的两条路径j和j+1如果满足: (route[j]阅读全文
posted @ 2018-05-01 02:19 AutSky_JadeK 阅读(9) 评论(0) 编辑
摘要: 题意:平面上n个点,每个点带有一个或正或负的权值,让你在平面上放一个内边长为2l,外边长为2r的正方形框,问你最大能圈出来的权值和是多少? 容易推出,能框到每个点的 框中心 的范围也是一个以该点为中心的相同大小的框。 于是,把每个点的框拆成4条线。从下往上扫过去,最下面的线,给[R,R]区间加上该点阅读全文
posted @ 2018-05-01 02:08 AutSky_JadeK 阅读(7) 评论(0) 编辑
摘要: 题意:有n个事件,每个事件有一个严重程度,m个人(m>=n),你要让m个人去背锅,每个人只能背一个事件的锅,但是一个事件可以由很多人背。让你使得这m个人所承受的严重程度的方差最小化。 考虑一开始n个人各背一个事件,记录下该初始状态下的ans。然后分配剩下的m-n个人。堆里存储每个事件的严重程度x和当阅读全文
posted @ 2018-05-01 01:57 AutSky_JadeK 阅读(17) 评论(0) 编辑
摘要: 题意:有两个服务要求被满足,服务S1要求x1数量的资源,S2要求x2数量的资源。有n个服务器来提供资源,第i台能提供a[i]的资源。当你选择一定数量的服务器来为某个服务提供资源后,资源需求会等量地分担给它们,要求每台服务器承担的资源需求不超过其所能提供的资源需求。给定一种合法的方案,每台服务器要么没阅读全文
posted @ 2018-05-01 01:50 AutSky_JadeK 阅读(18) 评论(0) 编辑
摘要: 题意:给你一个大整数X的素因子分解形式,每个因子不超过m。问你能否找到两个数n,k,k<=n<=m,使得C(n,k)=X。 不妨取对数,把乘法转换成加法。枚举n,然后去找最大的k(<=n/2),使得ln(C(n,k))<=ln(X),然后用哈希去验证是否恰好等于ln(X)。 由于n和k有单调性,所以阅读全文
posted @ 2018-04-15 20:52 AutSky_JadeK 阅读(15) 评论(0) 编辑
摘要: 题意:给你n个点,点带权,任意两点之间的边权是它们的点权的异或值中“1”的个数,问你该图的最小生成树。 看似是个完全图,实际上有很多边是废的。类似……卡诺图的思想?从读入的点出发BFS,每次只到改变它的任意一位所能到达的点(不论是否读入)。 记录每个点是从哪个读入点BFS过来的,当第二次访问某个点的阅读全文
posted @ 2018-04-15 20:45 AutSky_JadeK 阅读(13) 评论(0) 编辑
摘要: 题意:给你n个两两不同的零一串,Alice在其中选定一个,Bob去猜,每次询问某一位是0 or 1。问你最坏情况下最少要猜几次。 f(22...2)表示当前状态的最小步数,2表示这位没确定,1表示确定为1,0表示确定为0。 首先枚举去问哪一位,从这些方案中取最小者。 这里的MAX(a,b)进行重定义阅读全文
posted @ 2018-04-15 20:37 AutSky_JadeK 阅读(13) 评论(0) 编辑
摘要: 题意:有n个数,除了空集外,它们会形成2^n-1个子集,给你这些子集的和的结果,让你还原原来的n个数。 假设原数是3 5 16, 那么它们形成3 5 8 16 19 21 24, 那么第一轮取出开头的数(3),然后从当前最大的数(24)中减去它,然后必然会产生一个与其相等的数(21),将其一并删去(阅读全文
posted @ 2018-04-15 20:25 AutSky_JadeK 阅读(10) 评论(0) 编辑
摘要: 题意:给你一些数,问你是否能够将它们划分成两个集合,使得这两个集合的异或和之差的绝对值最小。 设所有数的异或和为S,集合A的异或和为A。 首先,S的0的位对答案不造成影响。 S的最高位1,所对应的A的那一位一定可以为1,不妨设它为1。 然后考虑后面的S的1位,尽量使A对应的位置为0,这样才能使S x阅读全文
posted @ 2018-04-15 20:14 AutSky_JadeK 阅读(15) 评论(0) 编辑
摘要: 设“共n个叶子,且每个非叶节点至少有两个子节点”的树的数量为f[n],再乘2就是本题答案。 设状态d(i,j)表示每棵子树最多包含i个叶子、一共有j个叶子的树的个数。于是f(n)=d(n-1,n)。假设恰好包含i个叶子的子树有p棵,那么这些树的组合数等于从f(i)棵树中选择p棵树的方案数,即C(f(阅读全文
posted @ 2018-04-15 02:13 AutSky_JadeK 阅读(13) 评论(0) 编辑
摘要: 题意:给你一个H*W的字符矩阵,一次操作可以任意将两行或者两列交换。问你是否能通过任意多次操作,使得其变为对称矩阵。对称的含义是:对于任何格子A(i,j),其都等于A(H-i+1,W-j+1)。 显然,先换行还是列不影响结果,不妨假设先换行再换列。 行不必真换,只需找出哪些行成对即可,然后这些对的顺阅读全文
posted @ 2018-04-15 00:23 AutSky_JadeK 阅读(13) 评论(0) 编辑
摘要: 题意:有R个机器人,去买B件商品,有C个收银员,每个收银员有能处理的商品数量上限mi,处理单件商品所需的时间si,以及最后的装袋时间pi。 每个收银员最多只能对应一个机器人,每个机器人也最多只能对应一个收银员。 让你给每个机器人安排他购买的商品数,以及对应哪个机器人,问你最少需要多长时间才能买回所有阅读全文
posted @ 2018-04-15 00:03 AutSky_JadeK 阅读(31) 评论(1) 编辑
摘要: 题意:给你一个矩阵,有些点是黑的,让你横切h刀,纵切v刀,问你是否能让切出的所有子矩阵的黑点数量相等。 设黑点总数为sum,sum必须能整除(h+1),进而sum/(h+1)必须能整除(v+1)。 先考虑横行,贪心地扫过去,如果到了某一行,当前统计的黑点数恰好为sum/(h+1),就在这里切一刀,接阅读全文
posted @ 2018-04-14 23:55 AutSky_JadeK 阅读(14) 评论(0) 编辑
摘要: 题意:海平面每天高度会变化,一个人会在每天海平面的位置刻下一道痕迹(如果当前位置没有已经刻划过的痕迹),并且记录下当天比海平面高的痕迹有多少条,记为a[i]。让你最小化每天比海平面低的痕迹条数之和。 贪心,使得痕迹条数尽可能小。 考虑处理出每天痕迹条数的数组f[i]的最小可能值。 满足几个约束即可,阅读全文
posted @ 2018-03-25 02:11 AutSky_JadeK 阅读(85) 评论(0) 编辑
摘要: 题意:给你一个棋盘的最终局面。 你的一次操作可以选择一些行和列,将它们的交叉点染黑,不能重复选择某行或者某列。问你是否能经过数次操作之后,达到目标局面。 就枚举所有黑点,如果该点行列都没被标记,就给它的行列新建一次操作的序号;否则如果只有行有操作标号,就把它付给列操作标号;对列亦然。 然后模拟一遍,阅读全文
posted @ 2018-03-25 02:07 AutSky_JadeK 阅读(17) 评论(0) 编辑
摘要: 题意:You are given an array A of N non-negative integers and an integer M. Find the number of pair(i,j) such that 1≤i≤j≤N and min(Ai,Ai+1,...,Aj)⋅(Ai⊕Ai阅读全文
posted @ 2018-03-24 23:33 AutSky_JadeK 阅读(29) 评论(0) 编辑
摘要: 题意:给你一个零一矩阵,q次询问,每次给你两个长宽相同的子矩阵,问你它们是恰好有一位不同,还是完全相同,还是有多于一位不同。 对每行分别哈希,先一行一行地尝试匹配,如果恰好发现有一行无法对应,再对那一行内部进行暴力找出那一行内部有几位不同即可。阅读全文
posted @ 2018-03-24 23:26 AutSky_JadeK 阅读(17) 评论(0) 编辑
摘要: 题意:有n瓶药剂,其中只有一瓶药剂有毒。让你用最少的小白鼠试出哪瓶有毒。你只有一次给任意只小白鼠各喂食任意种类药剂的机会。 m只老鼠就能对应2^m种“生死状态”的组合,给每种状态分配一个种类的药剂,然后给每只老鼠喂食“如果它在这种药剂对应的生死状态下死去”的所有药剂,就可以根据发生的死亡情况,分辨出阅读全文
posted @ 2018-03-24 23:24 AutSky_JadeK 阅读(25) 评论(0) 编辑
该文被密码保护。
posted @ 2018-03-07 17:45 AutSky_JadeK 阅读(4) 评论(0) 编辑
摘要: 题意:给你n个正整数a1...an,一次操作是选择任意两个数ai,aj,将它们都替换成gcd(ai,aj)。让你在5n步内将所有数变为1。或者输出不可能。 如果所有数的gcd不为1,显然不可能。 否则从a1开始,一路和下一个数取上gcd,一定能在某个时刻,让a1这个数变成1。 然后就好办了,再让a2阅读全文
posted @ 2018-01-26 09:05 AutSky_JadeK 阅读(23) 评论(0) 编辑
摘要: 转载自:http://blog.csdn.net/madaidao/article/details/42616743 Bob was playing MC and was punished by Alice. Bob was trapped in a maze and there were some阅读全文
posted @ 2018-01-26 09:01 AutSky_JadeK 阅读(33) 评论(0) 编辑
摘要: 转载自:http://blog.csdn.net/u013611908/article/details/44545955 题目大意:一副牌除掉大小王,然后有一些已经形成了序列,让你算剩下的牌能组合出多少种比给的序列小的组合。 思路:搜索,分这个位置相同或者小于,假如放一个小于的,则剩下的就是全排列 阅读全文
posted @ 2018-01-26 08:58 AutSky_JadeK 阅读(11) 评论(0) 编辑
摘要: 题意:定义一种无进位加法运算,给你n个正整数,问你取出两个数,使得他们加起来和最大/最小是多少。 无进位加法运算,其实是一种位运算,跟最大xor那个套路类似,很容易写出对于每个数字,其对应的最优数字是谁,就对于十叉的字典树,贪心地尽量往使结果更优越的方向走即可。阅读全文
posted @ 2018-01-26 08:52 AutSky_JadeK 阅读(19) 评论(0) 编辑
摘要: 题意:给你两个串A,B,以及一个整数K,让你找到B的一个尽可能长的前缀,使得其在A串中出现的次数不小于K次。 对A串建立后缀自动机,然后把B串放在上面跑,由于每到一个结点,该结点endpos集合的大小就是该前缀出现的次数,又由于较长前缀的出现次数不大于较短前缀,所以只要跑到不满足条件停下即可。阅读全文
posted @ 2018-01-26 08:41 AutSky_JadeK 阅读(22) 评论(0) 编辑
摘要: 题意:问你n*n的国际象棋棋盘上放3个互不攻击皇后的方案数。 oeis……公式见代码内阅读全文
posted @ 2018-01-24 18:45 AutSky_JadeK 阅读(23) 评论(0) 编辑
摘要: 求最长上升子序列方案数。 转载自:http://blog.csdn.net/u013445530/article/details/47958617,如造成不便,请博主联系我。 数组A包含N个整数(可能包含相同的值)。设S为A的子序列且S中的元素是递增的,则S为A的递增子序列。如果S的长度是所有递增子阅读全文
posted @ 2018-01-24 18:39 AutSky_JadeK 阅读(21) 评论(0) 编辑
摘要: 使用哈夫曼编码对文本文件进行压缩。阅读全文
posted @ 2017-12-30 20:19 AutSky_JadeK 阅读(37) 评论(0) 编辑
摘要: typedef long long __int64; #include "mpi.h" #include <cstdio> #include <algorithm> #include <cmath> using namespace std; int Compute_partner(int phase阅读全文
posted @ 2017-12-30 20:16 AutSky_JadeK 阅读(171) 评论(0) 编辑
TVアニメ「Charlotte(シャーロット)」公式サイト TVアニメ「Charlotte(シャーロット)」公式サイト