杂题
愤怒的愣头青
这个作者很懒,什么都没留下…
展开
-
【bzoj4401】块的计数
Description小Y最近从同学那里听说了一个十分牛B的高级数据结构——块状树。听说这种数据结构能在sqrt(N)的时间内维护树上的各种信息,十分的高效。当然,无聊的小Y对这种事情毫无兴趣,只是对把树分块这个操作感到十分好奇。他想,假如能把一棵树分成几块,使得每个块中的点数都相同该有多优美啊!小Y很想知道,能有几种分割方法使得一棵树变得优美。小Y每次会画出一棵树,但由于手速太快,有时候小Y画出来原创 2017-12-29 17:54:26 · 254 阅读 · 0 评论 -
【51Nod1454】升排列
定义长度为n的排列为数组 p = [p1, p2, …, pn] ,这个数组包含n个整数,他们都在1到n之间,并且两两不同。我们说这个排列把1映射到 p1 ,2映射到 p2 ,依此类推。 下面介绍一下排列的循环表示。一个环是一串数字,这一串数字中每一个数字被映射到下一个数字,最后一个数字被映射到第一个数字。排列p的循环表示是由一系列的环构成的。比如排列p = [4, 1, 6, 2, 5, 3]原创 2017-09-05 20:58:12 · 281 阅读 · 0 评论 -
【51Nod1070】Bash游戏 V4
有一堆石子共有N个。A B两个人轮流拿,A先拿。每次拿的数量最少1个,最多不超过对手上一次拿的数量的2倍(A第1次拿时要求不能全拿走)。拿到最后1颗石子的人获胜。假设A B都非常聪明,拿石子的过程中不会出现失误。给出N,问最后谁能赢得比赛。 例如N = 3。A只能拿1颗或2颗,所以B可以拿到最后1颗石子。 Input 第1行:一个数T,表示后面用作输入测试的数的数量。(1 <= T <= 10原创 2017-07-29 11:33:22 · 223 阅读 · 0 评论 -
【51Nod1060】最复杂的数
把一个数的约数个数定义为该数的复杂程度,给出一个n,求1-n中复杂程度最高的那个数。 例如:12的约数为:1 2 3 4 6 12,共6个数,所以12的复杂程度是6。如果有多个数复杂度相等,输出最小的。 Input 第1行:一个数T,表示后面用作输入测试的数的数量。(1 <= T <= 100) 第2 - T + 1行:T个数,表示需要计算的n。(1 <= n <= 10^18) Outp原创 2017-07-29 11:24:05 · 405 阅读 · 0 评论 -
【51Nod1799】二分答案
lyk最近在研究二分答案类的问题。 对于一个有n个互不相同的数且从小到大的正整数数列a(其中最大值不超过n),若要找一个在a中出现过的数字m,一个正确的二分程序是这样子的:l=1; r=n; mid=(l+r)/2; while (l<=r) { if (a[mid]<=m) l=mid+1; else r=mid-1; mid=(l+r)/2; }最终a[r]一定等于m原创 2017-07-26 20:18:15 · 326 阅读 · 0 评论 -
【51Nod1009】 数字1的数量
给定一个十进制正整数N,写下从1开始,到N的所有正数,计算出其中出现所有1的个数。 例如:n = 12,包含了5个1。1,10,12共包含3个1,11包含2个1,总共5个1。 Input 输入N(1 <= N <= 10^9) Output 输出包含1的个数 Input示例 12 Output示例 5 题解 考虑每一位上1出现的个数代码#include<cstdio>#inc原创 2017-07-26 19:44:39 · 240 阅读 · 0 评论 -
【51Nod1125】交换机器的最小代价
有N台机器重量各不相等,现在要求把这些机器按照重量排序,重量从左到右依次递增。移动机器只能做交换操作,但交换机器要花费一定的费用,费用的大小就是交换机器重量的和。例如:3 2 1,交换1 3后为递增排序,总的交换代价为4。给出N台机器的重量,求将所有机器变为有序的最小代价。(机器的重量均为正整数) Input 第1行:1个数N,表示机器及房间的数量。(2 <= N <= 50000) 第2 -原创 2017-08-03 13:18:55 · 375 阅读 · 0 评论 -
【bzoj2097】[Usaco2010 Dec]Exercise 奶牛健美操
DescriptionFarmer John为了保持奶牛们的健康,让可怜的奶牛们不停在牧场之间 的小路上奔跑。这些奶牛的路径集合可以被表示成一个点集和一些连接 两个顶点的双向路,使得每对点之间恰好有一条简单路径。简单的说来, 这些点的布局就是一棵树,且每条边等长,都为1。 对于给定的一个奶牛路径集合,精明的奶牛们会计算出任意点对路径的最大值, 我们称之为这个路径集合的直径。如果直径太大,奶牛们就会拒原创 2017-07-25 11:31:50 · 381 阅读 · 0 评论 -
【bzoj2563】阿狸和桃子的游戏
Description 阿狸和桃子正在玩一个游戏,游戏是在一个带权图G=(V, E)上进行的,设节点权值为w(v),边权为c(e)。游戏规则是这样的: 1. 阿狸和桃子轮流将图中的顶点染色,阿狸会将顶点染成红色,桃子会将顶点染成粉色。已经被染过色的点不能再染了,而且每一轮都必须给一个且仅一个顶点染色。 2. 为了保证公平性,节点的个数N为偶数。 3. 经过N/2轮游戏之后,两人都原创 2017-07-25 11:28:38 · 279 阅读 · 0 评论 -
【51Nod1403】有趣的堆栈
大家都熟悉堆栈操作。一个堆栈一般有两种操作,push和pop。假设所有操作都是合法的并且最终堆栈为空。我们可以有很多方法记录堆栈的操作, (1) 对每个pop操作,我们记录它之前一共有多少个push操作。 (2) 对每个pop操作,我们记录这个被Pop的元素曾经被压上了几个。 例如:操作push, push, pop, push, push, pop, push, pop, pop, pop原创 2017-08-30 20:15:56 · 278 阅读 · 0 评论 -
【51Nod1288】汽油补给
有(N+1)个城市,0是起点N是终点,开车从0 -> 1 - > 2…… -> N,车每走1个单位距离消耗1个单位的汽油,油箱的容量是T。给出每个城市到下一个城市的距离D,以及当地的油价P,求走完整个旅途最少的花费。如果无法从起点到达终点输出-1。 例如D = {10, 9, 8}, P = {2, 1, 3},T = 15,最小花费为41,在0加上10个单位的汽油,在1加满15个单位的汽油,在2原创 2017-10-17 20:37:41 · 320 阅读 · 0 评论 -
【bzoj3004】吊灯
Description Alice家里有一盏很大的吊灯。所谓吊灯,就是由很多个灯泡组成。只有一个灯泡是挂在天花板上的,剩下的灯泡都是挂在其他的灯泡上的。也就是说,整个吊灯实际上类似于一棵树。其中编号为1的灯泡是挂在天花板上的,剩下的灯泡都是挂在编号小于自己的灯泡上的。 现在,Alice想要办一场派对,她想改造一下这盏吊灯,将灯泡换成不同的颜色。她希望相同颜色的灯泡都是相连的,并且每一种颜色原创 2017-12-29 16:40:59 · 289 阅读 · 0 评论 -
【bzoj3498】PA2009 Cakes 判断三元环
DescriptionN个点m条边,每个点有一个点权a。 对于任意一个三元环(j,j,k)(i为max(ai,aj,ak) 求所有三元环的贡献和。 NInputThe first line of the standard input contains two integers n and m (1Bi) separated by a single space. They d原创 2018-01-13 15:38:03 · 537 阅读 · 0 评论 -
【bzoj4780】[Usaco2017 Open]Modern Art 2
DescriptionHaving become bored with standard 2-dimensional artwork (and also frustrated at others copying her w ork), the great bovine artist Picowso has decided to switch to a more minimalist, 1-dime原创 2017-12-28 18:40:49 · 372 阅读 · 0 评论 -
【bzoj4292】[PA2015]Równanie 枚举
Description对于一个正整数n,定义f(n)为它十进制下每一位数字的平方的和。现在给定三个正整数k,a,b,请求出满足a<=n<=b且k*f(n)=n的n的个数。 Input第一行包含三个正整数k,a,b(1<=k,a,b<=10^18,a<=b)。 Output输出一个整数,即满足条件的n的个数。 Sample Input51 5000 10000 Sample Output3原创 2018-01-04 13:12:30 · 214 阅读 · 0 评论 -
【loj6159】「美团 CodeM 初赛 Round A」最长树链
题目描述 Mr. Walker\text{Mr. Walker}Mr. Walker最近在研究树,尤其是最长树链问题。现在树中的每个点都有一个值,他想在树中找出最长的链,使得这条链上对应点的值的最大公约数不等于111。请求出这条最长的树链的长度。 输入格式 第一行一个整数 nnn,表示点的个数。接下来n−1n-1n−1行,每行两个整数x,yx,yx,y表示x,yx,yx,y之间有边。数据保证给原创 2017-12-23 12:33:54 · 641 阅读 · 0 评论 -
【bzoj3170】[Tjoi 2013]松鼠聚会
Description有N个小松鼠,它们的家用一个点x,y表示,两个点的距离定义为:点(x,y)和它周围的8个点即上下左右四个点和对角的四个点,距离为1。现在N个松鼠要走到一个松鼠家去,求走过的最短距离。Input第一行给出数字N,表示有多少只小松鼠。0<=N<=10^5 下面N行,每行给出x,y表示其家的坐标。 -10^9<=x,y<=10^9Output表示为了聚会走的路程和最小为多少。Sa原创 2017-10-23 20:34:16 · 282 阅读 · 0 评论 -
【bzoj2501】[usaco2010 Oct]Soda Machine
DescriptionTo meet the ever-growing demands of his N (1 <= N <= 50,000) cows, Farmer John has bought them a new soda machine. He wants to figure out the perfect place to install the machine. The fi原创 2017-11-07 10:50:14 · 351 阅读 · 0 评论 -
【bzoj1528】[POI2005]sam-Toy Cars
DescriptionJasio 是一个三岁的小男孩,他最喜欢玩玩具了,他有n 个不同的玩具,它们都被放在了很高的架子上所以Jasio 拿不到它们. 为了让他的房间有足够的空间,在任何时刻地板上都不会有超过k 个玩具. Jasio 在地板上玩玩具. Jasio’的妈妈则在房间里陪他的儿子. 当Jasio 想玩地板上的其他玩具时,他会自己去拿,如果他想玩的玩具在架子上,他的妈妈则会帮他去拿,当她拿玩具原创 2017-07-24 16:21:26 · 456 阅读 · 0 评论 -
素因子数GCD
题目描述 本题首先我们来定义素因子数函数F(x),它表示x的素因子有多少种。例如F(2)=1, 因为2的素因子只有2,F(10)=2, 因为10的素因子有2和5,F(12)=2,因为12的素因子也是2和5。给定区间[L, R],我们可以任意找两个数i, j (L <= i < j <= R),我们可以得到F(i)和F(j)。对于F(i)和F(j),我们还可以求他们的最大公因数,即GCD( F(i)原创 2017-07-24 15:27:27 · 817 阅读 · 0 评论 -
树上三角形
Description给定一大小为n的有点权树,每次询问一对点(u,v),问是否能在u到v的简单路径上取三个点权,以这三个权值为边长构成一个三角形。同时还支持单点修改。Input第一行两个整数n、q表示树的点数和操作数 第二行n个整数表示n个点的点权 以下n-1行,每行2个整数a、b,表示a是b的父亲(以1为根的情况下) 以下q行,每行3个整数t、a、b 若t=0,则询问(a,b) 若t=原创 2017-07-12 09:12:16 · 289 阅读 · 0 评论 -
【bzoj4414】数量积
Description神犇heheda最近得到了UOJ抱枕,蒟蒻yts1999想要玩。于是heheda给yts1999出了一道题: 一个长度为2n+2的整数数列 按照下式定义: A0=0 A1=C Ai+2=(Ai+1+Ai) Mod M (0<=i<=2*N) 现有n个平面向量v1…vn: V1=(A2,A3),V2=(A4,A5)…Vn=(A2n,A2n+1) 集合S的定义如下:其原创 2017-07-12 09:03:04 · 412 阅读 · 0 评论 -
【bzoj1709】[Usaco2007 Oct]Super Paintball超级弹珠
Description奶牛们最近从著名的奶牛玩具制造商Tycow那里,买了一套仿真版彩弹游戏设备(类乎于真人版CS)。 Bessie把她们玩游戏草坪划成了N * N(1 <= N<= 100)单位的矩阵,同时列出了她的 K (1 <= K <= 100,000)个对手在草地上的位置。然后她拿着这张表来找你,希望你能帮她计算一个数据。 在这个游戏中,奶牛可以用一把弹珠枪向8个方向中的任意一个射出子弹。原创 2017-05-27 20:19:24 · 418 阅读 · 0 评论 -
【bzoj1005】[HNOI2008]明明的烦恼
Description 自从明明学了树的结构,就对奇怪的树产生了兴趣……给出标号为1到N的点,以及某些点最终的度数,允许在 任意两点间连线,可产生多少棵度数满足要求的树?Input 第一行为N(0 < N < = 1000), 接下来N行,第i+1行给出第i个节点的度数Di,如果对度数不要求,则输入-1Output 一个整数,表示不同的满足要求的树的个数,无解输出0Sample Input原创 2017-05-26 21:02:07 · 241 阅读 · 0 评论 -
【bzoj2396】神奇的矩阵
Description给出三个行数和列数均为N的矩阵A、B、C,判断A*B=C是否成立。Input题目可能包含若干组数据。 对于每组数据,第一行一个数N,接下来给出三个N*N的矩阵,依次为A、B、C三个矩阵。 Output对于每组数据,若A*B=C成立,则输出Yes,否则No。每个答案占一行。 Sample Input122100Sample OutputNoHINT对于90%的数据,原创 2017-05-26 19:21:34 · 399 阅读 · 0 评论 -
【洛谷P3697】开心派对小火车
题目描述Aqours铁路公司旗下有N个站,编号1,2,..,N。有各停(各站停车)电车特急电车两种。特急车会在,一共M个车站停车。相邻的两站(即编号为i的车站和编号为的车站,而不是特急电车停车的相邻的两站)之间,各停电车要运行A分钟,特急需要B分钟。我们认为列车一直匀速运行,不考虑停车和加减速。现在要加一种快速电车,要求其停站覆盖所有的特急电车的停站,而相邻的两站要运行C分钟。为了要快,决定刚好停K原创 2017-04-13 18:49:11 · 1087 阅读 · 0 评论 -
【bzoj1257】[CQOI2007]余数之和sum
Description给出正整数n和k,计算j(n, k)=k mod 1 + k mod 2 + k mod 3 + … + k mod n的值,其中k mod i表示k除以i的余数。例如j(5, 3)=3 mod 1 + 3 mod 2 + 3 mod 3 + 3 mod 4 + 3 mod 5=0+1+0+3+3=7Input输入仅一行,包含两个整数n, k。Output输出仅一行,即j(n,原创 2017-04-07 16:45:36 · 363 阅读 · 0 评论 -
【洛谷三月月赛R2】小清新签到题
题目描述题目还是简单一点好。给定自然数n、k、x,你要求出第k小的长度为n的逆序对对数为x的1~n的排列,然后用仙人图上在线分支定界启发式带花树上下界最小费用流解决问题,保证存在。注:逆序对为满足、的。比较为字典序比较,即比较从前往后第一个不同的位置。第k小从1开始标号。一个1~n的排列定义为一个长度为n的数列,排序完可以得到1~n。输入输出格式输入格式: 一行三个自然数n、k、x。输出格式:原创 2017-04-07 14:59:00 · 331 阅读 · 0 评论 -
【洛谷P3817】 小A的糖果
题目描述小A有N个糖果盒,第i个盒中有a[i]颗糖果。小A每次可以从其中一盒糖果中吃掉一颗,他想知道,要让任意两个相邻的盒子中加起来都只有x颗或以下的糖果,至少得吃掉几颗糖。输入输出格式输入格式: 第一行输入N和x。第二行N个整数,为a[i]。输出格式: 至少要吃掉的糖果数量。输入输出样例输入样例#1: 3 3 2 2 2 输出样例#1: 1输入样例#2: 6 1 1 6 1 2 0原创 2017-07-02 19:06:13 · 626 阅读 · 0 评论 -
【洛谷P3819】松江1843路
题目描述涞坊路是一条长L米的道路,道路上的坐标范围从0到L,路上有N座房子,第i座房子建在坐标为x[i]的地方,其中住了r[i]人。松江1843路公交车要在这条路上建一个公交站,市政府希望让最多的人得到方便,因此希望所有的每一个的居民,从家到车站的距离的总和最短。公交站应该建在哪里呢?输入输出格式输入格式: 第一行输入L、N。接下来N行,每行两个整数x[i]和r[i]。输出格式: 一个整数,最小原创 2017-07-02 19:14:40 · 356 阅读 · 0 评论 -
【bzoj1698】[Usaco2007 Feb]Lilypad Pond 荷叶池塘
Description为了便于牛们欣赏和锻炼,农夫JOHN在他的农场上新添加了一个美丽的池塘。 JOHN的池塘是一个长方形,他已经把它划分成了M行N列的小正方行 (1 <= M <= 30; 1 <= N <= 30). 某些正方行里是石头,另外一些则是特别结实的荷叶,其余则只有清水。 为了锻炼,Bessie想从一片荷叶跳到另外一片。她的每一次跳跃都是一个象棋中的马步:两行一列或一行两列。 JOHN原创 2017-07-18 18:17:26 · 428 阅读 · 0 评论 -
【bzoj1098】[POI2007]办公楼biu
DescriptionFGD开办了一家电话公司。他雇用了N个职员,给了每个职员一部手机。每个职员的手机里都存储有一些同事的电话号码。由于FGD的公司规模不断扩大,旧的办公楼已经显得十分狭窄,FGD决定将公司迁至一些新的办公楼。 FGD希望职员被安置在尽量多的办公楼当中,这样对于每个职员来说都会有一个相对更好的工作环境。但是,为了联系方便起见,如果两个职员被安置在两个不同的办公楼之内,他们必须拥有彼此原创 2017-07-18 12:58:50 · 315 阅读 · 0 评论 -
【51Nod1293】球与切换器
有N行M列的正方形盒子。每个盒子有三种状态0, -1, +1。球从盒子上边或左边进入盒子,从下边或右边离开盒子。规则: 如果盒子的模式是-1,则进入它的球从下面出去。(方向变为向下) 如果盒子的模式是+1,则进入它的球从右面出去。 (反向变为向右) 如果盒子的模式是0, 则进入它的球方向不变。从上面进入的,从下面出去,从左面进入的,从右面出去。球离开一个盒子,这个盒子的模式切换为相反数。已知,原创 2017-07-17 19:06:21 · 262 阅读 · 0 评论 -
序列问题
题目描述 小H是个善于思考的学生,她正在思考一个有关序列的问题。她的面前浮现出了一个长度为n的序列{ai},她想找出两个非空的集合S、T。这两个集合要满足以下的条件:两个集合中的元素都为整数,且都在 [1, n] 里,即Si,Ti ∈ [1, n]。对于集合S中任意一个元素x,集合T中任意一个元素y,满足x < y。对于大小分别为p, q的集合S与T,满足 a[s1] xor a[s2原创 2017-07-14 18:50:48 · 2072 阅读 · 0 评论 -
乐曲创作
题目描述 小可可是音乐学院的一名学生,他需要经常创作乐曲完成老师布置的作业。可是,小可可是一个懒惰的学生。所以,每次完成作业时,他不会重新创作一首新的乐曲,而是去修改上一次创作过的乐曲作为作业交给老师。小可可的乐曲由N个音调不同的音符组成,分别记为音符1…N。因此,他创作的乐曲是由1…N的一个排列构成,例如N=5时,他创作的乐曲可能为:2,1,3,5,4。但是,小可可每一次会按照一定的要求修改上一原创 2017-07-13 19:34:59 · 692 阅读 · 0 评论 -
【bzoj1609】[Usaco2008 Feb]Eating Together麻烦的聚餐
Description为了避免餐厅过分拥挤,FJ要求奶牛们分3批就餐。每天晚饭前,奶牛们都会在餐厅前排队入内,按FJ的设想所有第3批就餐的奶牛排在队尾,队伍的前端由设定为第1批就餐的奶牛占据,中间的位置就归第2批就餐的奶牛了。由于奶牛们不理解FJ的安排,晚饭前的排队成了一个大麻烦。 第i头奶牛有一张标明她用餐批次D_i(1 <= D_i <= 3)的卡片。虽然所有N(1 <= N <= 30,000原创 2017-06-24 16:05:56 · 313 阅读 · 0 评论 -
【bzoj1430】小猴打架
Description一开始森林里面有N只互不相识的小猴子,它们经常打架,但打架的双方都必须不是好朋友。每次打完架后,打架的双方以及它们的好朋友就会互相认识,成为好朋友。经过N-1次打架之后,整个森林的小猴都会成为好朋友。 现在的问题是,总共有多少种不同的打架过程。 比如当N=3时,就有{1-2,1-3}{1-2,2-3}{1-3,1-2}{1-3,2-3}{2-3,1-2}{2-3,1-3}六种不原创 2017-06-24 15:54:05 · 420 阅读 · 0 评论 -
无聊的游戏
题目描述 学校的运动会开始了,体能很菜的小可可没报任何比赛项目,于是和同学们玩一个十分无聊的游戏。游戏在一个由n*n个方格组成的正方形棋盘上进行,首先在每个方格上均匀随机地填入1到m之间的正整数(每个方格填的数均不同),然后小可可均匀随机地选出k个1到m的数字(可能选的数不在棋盘上),把它们出现在棋盘上的方格涂黑,设有R行被整行涂黑,有C列被整列涂黑,小可可便可以得到2^(R+C)分。现在小可可想原创 2017-07-12 19:44:54 · 468 阅读 · 0 评论 -
最长公共回文子序列ah
题目描述 YJC最近在学习字符串的有关知识。今天,他遇到了这么一个概念:最长公共回文子序列。一个序列S,如果S是回文的且分别是两个或多个已知序列的子序列,且是所有符合此条件序列中最长的,则 S 称为已知序列的最长公共回文子序列。YJC很聪明,他很快就学会了如何求最长公共回文子序列。他现在想把问题规模扩大一些,于是他提出了这么一个问题:给一个长度为n(1≤n≤100000)的字符串a和一个长度为m(原创 2016-11-14 13:18:26 · 475 阅读 · 0 评论