上一页 1 ··· 6 7 8 9 10 11 12 13 14 ··· 25 下一页
摘要: 【题意】记正整数x的因数个数为g(x),当正整数x满足:g(x)>g(i)(0<i<x)时,称x为反素数,求不超过给定N的最大反素数,N<2e9。 【算法】数论,搜索 【题解】 这个问题等价于求1~N中因数最多的最小数字。 反素数有以下性质: 1.反素数的素因子一定是从2开始的连续素数。 必要性证明 阅读全文
posted @ 2017-12-05 21:01 ONION_CYC 阅读(201) 评论(0) 推荐(0) 编辑
摘要: 【题目】B. Ithea Plays With Chtholly 【题意】交互题,有n格,每次给一个[1,c]的数字,回答填入的位置后再次给数字,要求在m轮内使n格填满且数列不递减。n,m>=2,1<=c<=1000,1<=n*[c/2]<=m<=1000。 【算法】贪心 【题解】对于每次的数字x, 阅读全文
posted @ 2017-12-05 19:15 ONION_CYC 阅读(361) 评论(0) 推荐(0) 编辑
摘要: 【题目】E. Present for Vitalik the Philatelist 【题意】给定n个数字,定义一种合法方案为选择一个数字Aa,选择另外一些数字Abi,令g=gcd(Ab1...Abx),要求满足g≠1且gcd(Aa,g)=1,求方案数取模1e9+7。2<=n<=5*10^5,2<= 阅读全文
posted @ 2017-12-05 13:50 ONION_CYC 阅读(761) 评论(1) 推荐(3) 编辑
摘要: 【容斥原理】 对于统计指定排列方案数的问题,一个方案是空间中的一个元素。 定义集合x是满足排列中第x个数的限定条件的方案集合,设排列长度为S,则一共S个集合。 容斥原理的本质是考虑[集合交 或 集合交的补集]和[集合并 或 集合并的补集]之间相互转化的问题。 定义目标函数为f(m),已知函数g(T) 阅读全文
posted @ 2017-12-04 21:09 ONION_CYC 阅读(3744) 评论(0) 推荐(5) 编辑
摘要: 推荐:数论知识总结——史诗大作(这是一个flag) 【欧几里得算法】辗转相除法 1.被整除数的性质:若c|a,c|b,则c|(ma+nb) 整除数的性质:若a|c,b|c,gcd(a,b)=1,则ab|c。(否则lcm(a,b)|c) 2.gcd的定义 若c|a,c|b,则c为a和b的公因数。当c能 阅读全文
posted @ 2017-12-04 20:57 ONION_CYC 阅读(1285) 评论(0) 推荐(0) 编辑
摘要: 【题意】给定一棵带点权树,三种操作: 1.询问点x到根的路径和 2.子树x内的点权加定值y 3.将点x的父亲更换为y,保证仍是树。 【算法】平衡树(fhq-treap) 【题解】 将树的dfs序作为序列维护,对每个点入栈+1,出栈-1,这样操作1就是前缀和(非此路径的都会正负抵消),操作2就是区间加 阅读全文
posted @ 2017-12-03 22:12 ONION_CYC 阅读(533) 评论(0) 推荐(0) 编辑
摘要: 【题目】C. Superior Periodic Subarrays 【题意】给定循环节长度为n的无限循环数列,定义(l,s)表示起点为l的长度为s的子串,(l,s)合法要求将子串从该起点开始以s为循环节长度无限循环中每个数字都>=数列中对应位置的数字,求合法(l,s)的数量。0<=l<n,1<=s 阅读全文
posted @ 2017-12-01 18:57 ONION_CYC 阅读(344) 评论(0) 推荐(0) 编辑
摘要: 【题意】给定ai,将1~n从小到大插入到第ai个数字之后,求每次插入后的LIS长度。 【算法】树状数组||平衡树 【题解】 这是树状数组的一个用法:O(n log n)寻找前缀和为k的最小位置。(当数列中只有0和1时,转化为求对应排名的数字,就是简单代替平衡树) 根据树状数组的二进制分组规律,从大到 阅读全文
posted @ 2017-11-28 14:10 ONION_CYC 阅读(855) 评论(0) 推荐(0) 编辑
摘要: 【题意】给定n个岛屿和排名,q次操作,连接两个岛屿或查询岛屿所在连通块第k小。 【算法】平衡树(treap)||线段树合并 对于每个连通块维护排名树,启发式合并(将size较小的树一一拆出来加入另一棵树)。 复杂度O(n log2n)。 #include<cstdio> #include<cstri 阅读全文
posted @ 2017-11-27 21:01 ONION_CYC 阅读(267) 评论(0) 推荐(0) 编辑
摘要: 【旋转】 平衡树中的旋转是指在不改变中序遍历的前提下改变树的形态的方式。(中序遍历=排名顺序) 右旋将当前点的左节点旋上来,左旋反之。(图侵删) 原根k,新根o。 1.把k的左节点o解放出来并更新为o的右节点。 2.解放出来的o成为新根,其右孩子赋为k。 【Treap】树堆 功能:维护支持单点插入和 阅读全文
posted @ 2017-11-27 13:51 ONION_CYC 阅读(901) 评论(0) 推荐(1) 编辑
摘要: 【题意】给定含有n个0的的数列。 1.区间加值 2.区间翻转 3.区间求最大值 【算法】平衡树(fhq-treap) 需要特别注意的是: 1.使0点对全局无影响并全程保持(例如求max,t[0].mx=-inf) 2.平衡树和线段树的上传区别在于要考虑本身这个点。 #include<cstdio> 阅读全文
posted @ 2017-11-24 21:19 ONION_CYC 阅读(347) 评论(0) 推荐(0) 编辑
摘要: 【题意】 1. 插入x数 2. 删除x数(若有多个相同的数,因只删除一个) 3. 查询x数的排名(若有多个相同的数,因输出最小的排名) 4. 查询排名为x的数 5. 求x的前驱(前驱定义为小于x,且最大的数) 6. 求x的后继(后继定义为大于x,且最小的数) 【算法】平衡树(treap) 重要的细节 阅读全文
posted @ 2017-11-24 14:04 ONION_CYC 阅读(264) 评论(0) 推荐(1) 编辑
摘要: 【题意】n个点的树,1为根,要求删除一些点使得截断根节点和所有叶子结点的路径(不能删根,可以删叶子)。有m支军队在m个点上,每时刻所有军队可以走一步,最终走到的地方就是删除的点,求最短时间。 【算法】二分,贪心,倍增 【题解】 所有点同时走路,求最短时间,这样的询问通常考虑二分转化为判定性问题。(实 阅读全文
posted @ 2017-11-06 19:22 ONION_CYC 阅读(305) 评论(0) 推荐(1) 编辑
摘要: 【题意】给定正边权有向图,车油量上限C,每个点可以花费pi加油至min(C,ci),走一条边油-1,T次询问s点出发带钱q,旅行路程至少为d的最多剩余钱数。 n<=100,m<=1000,C<=10^5,q<=n^2。 【算法】动态规划 【题解】官方题解 虽然不是DAG,但是由于q很小的特点,将q加 阅读全文
posted @ 2017-11-06 09:57 ONION_CYC 阅读(352) 评论(0) 推荐(0) 编辑
摘要: 【题意】一开始车上有编号为0~a的红茶,过程中出现的红茶编号仅有[0,b),有三种操作: 1.买进编号未在车上出现过的红茶。 2.丢掉车上指定编号的红茶。 3.将最早丢出去的红茶捡回来。 每次操作后求编号最小的不在车上的红茶。 【算法】单调队列 【题解】本题最重要的性质在于早丢早捡。 因此,当进行丢 阅读全文
posted @ 2017-11-06 07:20 ONION_CYC 阅读(436) 评论(0) 推荐(0) 编辑
摘要: 【题意】LibreOJ 【算法】乱搞 【题解】容易发现数列最后一定单调,最后单调递增则最大值赋为最后一个,反之最小值赋为最后一个,然后处理一些细节就可以AC,要注意以下几点: 1.数列连续三项以及数列最后一项>10^7时退出。 2.可能第一要求项就比你枚举的大,需要特判。 3.要求项的枚举不能等于最 阅读全文
posted @ 2017-11-06 06:56 ONION_CYC 阅读(517) 评论(0) 推荐(0) 编辑
摘要: 【题意】求一个k的倍数使其数位和最小,输出数位和,k<=10^5。 【算法】最短路 【题解】考虑极端情况数字是可能爆long long的(例如k*num=100...000),所以确定基本方向是依次考虑答案x的每个数位。 考虑x初始是1~9,每次在后面加一位,就有x*10+0~9十种操作。 但是x可 阅读全文
posted @ 2017-11-05 21:10 ONION_CYC 阅读(845) 评论(0) 推荐(0) 编辑
摘要: 【题意】给定三个长度为n的排列,求在三个排列中顺序相同的数对个数。 【算法】逆序对 【题解】很容易联想到NOIP火柴排队,涉及顺序问题显然和逆序对息息相关。 一个数对如果在三个排列中顺序不同,一定是1+2或2+1,也就是只在两数列之间顺序相同。 所以对三个数列两两求逆序对总数num,则不满足要求的数 阅读全文
posted @ 2017-11-04 07:42 ONION_CYC 阅读(229) 评论(0) 推荐(0) 编辑
摘要: 【题意】两列n个火柴,分别有高度ai和bi(同一列高度互不相同),每次可以交换一列中的两个相邻火柴,定义距离为∑(ai-bi)^2,求使距离最小的最少交换次数,n<=10^5。 【算法】逆序对 【题解】∑(ai-bi)^2=∑ai^2+∑bi^2-∑ai*bi,其中∑ai^2和∑bi^2为常数,则要 阅读全文
posted @ 2017-11-03 17:05 ONION_CYC 阅读(309) 评论(0) 推荐(0) 编辑
摘要: 【题意】已知n次方程(n<=100)及其所有系数(|ai|<=10^10000),求[1,m]中整数解的个数(m<=10^6)。 【算法】数论 【题解】如果f(x)=0,则有f(x)%p=0。 所以取若干个素数p,将所有数字读入取模并快速计算出所有f(x)%p,若均为0则认为f(x)=0。 优化:利 阅读全文
posted @ 2017-11-03 15:19 ONION_CYC 阅读(246) 评论(0) 推荐(0) 编辑
上一页 1 ··· 6 7 8 9 10 11 12 13 14 ··· 25 下一页