dfs
LK自动机
机惨我的人都没马
展开
-
特殊的质数肋骨
题目:题目描述农民约翰的母牛总是产生最好的肋骨。你能通过农民约翰和美国农业部标记在每根肋骨上的数字认出它们。农民约翰确定他卖给买方的是真正的质数肋骨,是因为从右边开始切下肋骨,每次还剩下的肋骨上的数字都组成一个质数,举例来说: 7 3 3 1 全部肋骨上的数字 7331是质数;三根肋骨 733是质数;二根肋骨 73 是质数;当然,最后一根肋骨 7 也是质数。 7331 被叫做长度 4 的特殊质数。写原创 2017-02-09 10:21:55 · 543 阅读 · 0 评论 -
加分二叉树
题目描述设一个n个节点的二叉树tree的中序遍历为(1,2,3,…,n),其中数字1,2,3,…,n为节点编号。每个节点都有一个分数(均为正整数),记第i个节点的分数为di,tree及它的每个子树都有一个加分,任一棵子树subtree(也包含tree本身)的加分计算方法如下:subtree的左子树的加分× subtree的右子树的加分+subtree的根的分数。若某个子树为空,规定其加...原创 2018-03-04 10:09:00 · 399 阅读 · 0 评论 -
【GDOI2018Day1模拟4.17】药香沁鼻
DescriptionInputOutputSample Input6 9 1 1 1 1 1 100 8 1 1 1 3 6 2 3 1000 4 1 4Sample Output105【样例解释】 其中一种最优解为:小C用 8 点能量摘下第 1,2,4,6 朵花,并放在药材中熬煮,由于第 4 朵花所钦慕的 3 号花不在药材中...原创 2018-04-19 21:41:48 · 430 阅读 · 0 评论 -
【JZOJ B组】【GDKOI2003】最大公共子串
Description从一个给定的串中删去(不一定连续地删去)0个或0个以上的字符,剩下的字符按原来的顺序组成的串是该串的字串。例如:“”, “a”, “aaa”,“bbb”,“xabb”,“xaaabbb”都是串“xaaabbb”的字串。(例子中的串不包括引号) 编程求N个非空串的最长公共子串的长度。 限制:2<=N<=100:N个串中的字符只会是数字0,1,…,9或小...原创 2018-07-17 18:35:44 · 347 阅读 · 0 评论 -
【JZOJ B组】【NOIP2013模拟9.29】Mixing Chemicals
Description实验室有n瓶化学药品,编号为0到n-1,你知道第i瓶只有和第c[i]瓶放在一起才会发生爆炸。为了整理实验室,你需要将他们装进k个丌同的盒子里。显然,为了你的生命安全,你丌能把两瓶会造成爆炸的药品放进同一个箱子。你希望计算出有多少中丌同的方案。为了降低难度,你只需要将答案mod 1000000007。Input第一行一个整数T,表示有T组测试数据。对于每组数...原创 2018-07-18 19:31:16 · 440 阅读 · 0 评论 -
【JZOJ1502】骑士精神
Description 在一个5×5的棋盘上有12个白色的骑士和12个黑色的骑士, 且有一个空位。在任何时候一个骑士都能按照骑士的走法(它可以走到和它横坐标相差为1,纵坐标相差为2或者横坐标相差为2,纵坐标相差为1的格子)移动到空位上。 给定一个初始的棋盘,怎样才能经过移动变成如下目标棋盘: 为了体现出骑士精神,他们必须以最少的步数完成任务。Input 第一...原创 2018-08-07 20:01:34 · 353 阅读 · 0 评论 -
【JZOJ A组】简单的操作
Description从前有个包含n个点,m条边,无自环和重边的无向图。 对于两个没有直接连边的点u;v,你可以将它们合并。具体来说,你可以删除u;v及所有以它们作为端点的边,然后加入一个新点x,将它与所有在原图中与u或v有直接连边的点连边。 你需要判断是否能通过若干次合并操作使得原图成为一条链,如果能,你还需要求出这条链的最大长度Input从文件merge.in中读入数据。 ...原创 2018-08-12 21:11:21 · 692 阅读 · 0 评论 -
【JZOJ A组】跳跃
Description你曾经梦想过你是电脑游戏中的主角吗?这个故事的主角,Branimir,现在正在做这个梦。 在Branimir的梦中,世界是由从左到右排列的N座摩天大楼组成的。对于第i座摩天大楼,我们知道摩天大楼的高度Hi和房顶金币的数量Gi。游戏从在任何摩天大楼上跳跃开始,由几步组成。在每一步中,Branimir都可以从他目前所在的摩天大楼向右跳(他也有可能跳过其中的几个),到一个高度...原创 2018-08-12 21:22:37 · 563 阅读 · 0 评论 -
【NOIP2003 提高组】传染病控制
题目https://www.luogu.org/problemnew/show/P1041思路题目大意是:把一棵树按深度分层,每一层断掉一条边,是剩下的节点数最小。其实,我们可以将问题转换为断掉的节点数最多。首先,贪心不可行,很容易被卡。因为数据只有300,直接搜索就行。搜索时一层一层搜,枚举断掉哪条边,并标记后代。代码#include<ios...原创 2018-09-07 20:16:18 · 1052 阅读 · 0 评论 -
【NOIP1998 提高组】棋盘问题(2)
题目https://www.luogu.org/problemnew/show/P1549思路直接爆搜需要注意的是,为了保证最优解,我们要用贪心的方法。对于不是第一行或第一列的从大到小开始搜,否则从小到大开始搜。这样搜出一定是最优解代码#include<iostream>#include<cstdio>#include<cs...原创 2018-09-03 22:23:20 · 497 阅读 · 0 评论 -
【NOIP2009 提高组 T3】最优贸易
题目https://www.luogu.org/problemnew/show/P1073思路这题很难吗?dfs啊!首先,我们用邻接表存图。对于可以一次走过的路径,我们统计其最小值。 设f[x]为走到x最多能赚多少钱 设minc为路上最小值,则转移方程为:f[x]=max(f[fa],maxc-a[u])注意要判断一下走这里是否对答案还有贡献(minc更新,f[x]...原创 2018-09-06 17:16:44 · 311 阅读 · 0 评论 -
【NOIP2016】愤怒的小鸟
题目https://www.luogu.org/problemnew/show/P2831思路对于每只猪,我们先看看是否有前面的抛物线覆盖,有则不用管,没有则分两种情况讨论:与前面没被覆盖的猪构成抛物线暂时不管,最后统计答案时等于抛物线数+没有处理的点的个数代码#include<iostream>#include<cstdio>#include<...原创 2018-10-27 07:21:50 · 423 阅读 · 0 评论 -
【NOIP2018 提高组 day2 T1】旅行
题目https://www.luogu.org/problemnew/show/P5021思路这道题60%的数据还是容易做; 这要建图的时候预处理一下,如何深搜就行了; 因为两点之间有且只有一条路径联通; 因此选择了了一条边,就必须把这棵子树走完; 所以我们每次都选择节点最小的那子树; 贪心就完事;考虑100%,发现n<=5000可以n2过,所以我们暴力删掉环上的一条边,在按60%跑...原创 2018-11-15 17:05:56 · 1037 阅读 · 0 评论 -
小木棍
题目描述乔治有一些同样长的小木棍,他把这些木棍随意砍成几段,直到每段的长都不超过50。现在,他想把小木棍拼接成原来的样子,但是却忘记了自己开始时有多少根木棍和它们的长度。给出每段小木棍的长度,编程帮他找出原始木棍的最小可能长度。输入输出格式输入格式:输入文件共有二行。第一行为一个单独的整数N表示砍过以后的小木棍的总数,其中N≤65(管理员注:要把超过50的长...原创 2018-02-23 15:59:43 · 762 阅读 · 0 评论 -
【BJOI2014】路径
Description在一个N个节点的无向图(没有自环、重边)上,每个点都有一个符号,可能是数字,也可能是加号、减号、乘号、除号、小括号。你要在这个图上数一数,有多少种走恰好K个节点的方法,使得路过的符号串起来能够得到一个算数表达式 算数表达式。路径的起点和终点可以任意选择。所谓算数表达式 算数表达式,就是由运算符连接起来的一系列数字。括号可以插入在表达式中以表明运算顺序。注意,你要处原创 2018-02-02 19:21:37 · 399 阅读 · 0 评论 -
母亲的牛奶(提高组)
题目:题目描述农民约翰有三个容量分别是A,B,C升的桶,A,B,C分别是三个从1到20的整数, 最初,A和B桶都是空的,而C桶是装满牛奶的。有时,农民把牛奶从一个桶倒到另一个桶中,直到被灌桶装满或原桶空了。当然每一次灌注都是完全的。由于节约,牛奶不会有丢失。写一个程序去帮助农民找出当A桶是空的时候,C桶中牛奶所剩量的所有可能性。输入输出格式输入格式: 单独的一行包括三个整数A,B和C。输出格式:原创 2017-02-09 12:26:18 · 786 阅读 · 0 评论 -
顺序的分数(easy,现用了更简便方法)
题目:题目描述输入一个自然数N,对于一个最简分数a/b(分子和分母互质的分数),满足1<=b<=N,0<=a/b<=1,请找出所有满足条件的分数。这有一个例子,当N=5时,所有解为:0/1 1/5 1/4 1/3 2/5 1/2 3/5 2/3 3/4 4/5 1/1给定一个自然数N,1<=n<=160,请编程按分数值递增的顺序输出所有解。注:①0和任意自然数的最大公约数就是那个自然数②互质指最大公原创 2017-02-11 21:53:44 · 585 阅读 · 0 评论 -
八皇后
题目:检查一个如下的6 x 6的跳棋棋盘,有六个棋子被放置在棋盘上,使得每行、每列有且只有一个,每条对角线(包括两条主对角线的所有平行线)上至多有一个棋子。上面的布局可以用序列2 4 6 1 3 5来描述,第i个数字表示在第i行的相应位置有一个棋子,如下:行号 1 2 3 4 5 6列号 2 4 6 1 3 5这只是跳棋放置的一个解。请编一个程序找出所有跳棋放置的解。并把它们以上面的序列方法输出。解原创 2017-02-13 13:24:06 · 416 阅读 · 0 评论 -
奇怪的电梯
题目:题目描述呵呵,有一天我做了一个梦,梦见了一种很奇怪的电梯。大楼的每一层楼都可以停电梯,而且第i层楼(1<=i<=N)上有一个数字Ki(0<=Ki<=N)。电梯只有四个按钮:开,关,上,下。上下的层数等于当前楼层上的那个数字。当然,如果不能满足要求,相应的按钮就会失灵。例如:3 3 1 2 5代表了Ki(K1=3,K2=3,……),从一楼开始。在一楼,按“上”可以到4楼,按“下”是不起作用的,因原创 2017-02-14 17:15:09 · 537 阅读 · 0 评论 -
迷宫
题目:题目背景迷宫 【问题描述】给定一个N*M方格的迷宫,迷宫里有T处障碍,障碍处不可通过。给定起点坐标和终点坐标,问: 每个方格最多经过1次,有多少种从起点坐标到终点坐标的方案。在迷宫中移动有上下左右四种方式,每次只能移动一个方格。数据保证起点上没有障碍。输入样例 输出样例【数据规模】1≤N,M≤5题目描述输入输出格式输入格式: 【输入】第一行N、M和T,N为行,M为列,T为障碍总数。第二行起点原创 2017-01-29 10:46:45 · 592 阅读 · 0 评论 -
取数字问题
题目:Description 给定M*N的矩阵,其中的每个元素都是-10到10之间的整数。你的任务是从左上角(1,1)走到右下角(M,N),每一步只能向右或向下,并且不能走出矩阵的范围。你所经过的方格里面的数字都必须被选取,请找出一条最合适的道路,使得在路上被选取的数字之和是尽可能小的正整数。Input 第一行两个整数M,N,(2<=M,N<=10),分别表示矩阵的行和列的数目。 接下来的M原创 2017-03-03 20:04:55 · 477 阅读 · 0 评论 -
最小步数(4.8 jzoj 第二题)
题目:Description从起点到终点有N步,如果“走”第K步,将会得到A[K]元钱,A[K]可能为负数。 你也可以花100元钱“跳过”当前的这一步,即不会得到A[K]。但是任何时刻身上的钱都必须是非负的。开始时,你身上共有0元。给定数组A,求在能到达终点的情况下最小需要走过(即不是用100元钱跳过)的步数。注意:最后一步必须走,不能选择跳过。Input共有两行。 第一行为整数N(0<=N<=原创 2017-04-08 15:06:28 · 1243 阅读 · 0 评论 -
求连通分量(DFS)
题目:Description 求一个图的连通分量Input n 顶点数(<=100) 边Output 连通分量Sample Input 5 1 2 3 4 2 3 0 0Sample Output 4作者思路:dfs,从一个点开始搜,如果s>ans then ans:=s; 这道题输入狠毒啊!代码:var a:array[0..101,0..101] of shortint;原创 2017-03-23 16:57:27 · 1042 阅读 · 0 评论 -
连通图
题目:Description 判断一个图是否为一个边通图Input n 顶点 (n<=100) 边 Output 1 表示连通 0 表示不边通Sample Input 5 1 2 2 3 5 4 0 0Sample Output 0作者思路:和联通分量差不多。 把统计ans变为统计点。代码:var a:array[0..101,0..101] of shortint; a原创 2017-03-24 19:46:43 · 629 阅读 · 0 评论 -
【USACO Open 2012铜】三条直线Three lines (jzoj)
题目:题目描述FJ想使用购买的新监控系统监视他的N头奶牛(1 <=N<= 50,000)。 第i头牛位置在(x_i, y_i),这是一对整数坐标,范围在0…1,000,000,000之内。FJ的监控系统有3个特殊的镜头,每一个镜头能够观察垂直或者水平的一行。 请决定FJ是否有可能架设这3个镜头,使他能够观察到所有的N头牛。也就是说,请决定N头牛的位置是否能同时被3条直线所覆盖。这3条直线必须是垂直或原创 2017-03-16 16:23:12 · 970 阅读 · 0 评论 -
JZOJ B组【GDKOI2014】壕壕的寒假作业
题目: Input Output输出n行。第i行输出两个整数,分别表示第i份作业最早完成的时刻以及最晚完成的时刻,两个整数之间以一个空格间隔。Sample Input4 43 4 5 61 21 32 43 4Sample Output3 37 128 1218 18思路:不得不说,挺水的。 用深搜。 怎样才能做到最快呢?先把目标作业前的作业做完,即使最短。(即f1的树) 怎样才能做到原创 2017-12-28 15:57:19 · 481 阅读 · 0 评论 -
【汕头市选2014】分叉(fork)
Description给出一棵N 个点的树,点的编号是1, 2,。。。,N。对于3 个点{a,b,c},如果不存在一条简单路径同时经过a,b,c,那么{a,b,c}是一个分叉。统计不同分叉的数量。树 无环,连通的无向图简单路径 不重复经过同一个点的路径Input第1 行,1 个整数N。接下来(N -1) 行,每行2 个整数Ai,Bi,表示点Ai 和点Bi 间有一条边原创 2018-01-31 15:27:05 · 302 阅读 · 0 评论 -
【gdgzezoi】Problem A: happy
Description【题目描述】给出一个n个节点的树,两点之间有且仅有一条路径相连。给出m个点对xi,yi,如果添加一条双向边边{u,v}后xi和yi在一个简单环中,则称这条边是happy的,happy值为这个简单环的点数。请你求出对于点对xi,yi,所有happy的边的happy值的平均数。注意,出题人似乎认为简单环是包括自环的。【输入数据】第一行2个整数n,m;...原创 2019-09-12 23:21:43 · 429 阅读 · 0 评论