Description 挑竹签——小时候的游戏夏夜,早苗和诹访子在月光下玩起了挑竹签这一经典的游戏.挑竹签,就是在桌上摆上一把竹签,每次从最上层挑走一根竹签.如果动了其他的竹签,就要换对手来挑.在所有的竹签都被挑走之后,谁挑走的竹签总数多,谁就胜了.身为神明的诹访子自然会让早苗先手.为了获胜,早苗现在的问题是,在诹访子出手之前最多能挑走多少竹签呢?为了简化问题,我们假设当且仅当挑最上层的竹签不会动到其他竹签.   Input 输入文件mikado.in.第一行输入两个整数n,m, 表示竹签的根数…
Description 我们将矩阵A中位于第i行第j列的元素记作A[i,j].一个矩阵A是酷的仅当它满足下面的条件:       A[1,1]+A[r,s]<=A[1,s]+A[r,1](r,s>1)其中r为矩阵A的行数,s为矩阵A的列数.进一步,如果一个矩阵是非常酷的仅当它的每一个至少包含两行两列子矩阵都是酷的.你的任务是,求出一个矩阵A中的一个非常酷的子矩阵B,使得B包含最多元素. Input 第一行包含两个整数R,S(2<=R,S<=1000),代表矩阵的行数与列数.接下来R…
Description 给出一幅由n个点m条边构成的无向带权图.其中有些点是黑点,其他点是白点.现在每个白点都要与他距离最近的黑点通过最短路连接(如果有很多个黑点,可以选取其中任意一个),我们想要使得花费的代价最小.请问这个最小代价是多少?注意:最后选出的边保证每个白点到离它最近的黑点的距离仍然等于原图中的最短距离. Input 第一行两个整数n,m:第二行n个整数,0表示白点,1表示黑点:接下来m行,每行三个整数x,y,z,表示一条连接x和y点,权值为z的边. Output 如果无解,输出im…
4269. [NOIP2015模拟10.27]挑竹签 (File IO): input:mikado.in output:mikado.out Time Limits: 1000 ms  Memory Limits: 131072 KB  Detailed Limits   Goto ProblemSet Description 挑竹签——小时候的游戏夏夜,早苗和诹访子在月光下玩起了挑竹签这一经典的游戏.挑竹签,就是在桌上摆上一把竹签,每次从最上层挑走一根竹签.如果动了其他的竹签,就要换对手来挑…
Description “我希望能使用更多的魔法.不对,是预定能使用啦.最终我要被大家称呼为大魔法使.为此我决定不惜一切努力.”——<The Grimoire of Marisa>雾雨魔理沙魔理沙一如既往地去帕秋莉的大图书馆去借魔导书(Grimoire) 来学习魔道.最开始的时候,魔理沙只是一本一本地进行研究.然而在符卡战中,魔理沙还是战不过帕秋莉.好在魔理沙对自己的借还和研究结果进行了记录,从而发现了那些魔导书的精妙之处.帕秋莉的那些魔导书,每本都有一个类别编号ti 和威力大小pi.而想要获…
题意不说 应该这辈子都不会忘记了... 这是我人生中做的最SB的一道DP题. 真的打的我心态崩了.... 可是竟然被我调出来了..... 也是没谁了... 我们设\(F[i][j][S]\)表示到第\(i\)层,然后放了\(j\)个三角形,四个方向是否可以继续拓展的状态为\(S\). 然后分十五种情况进行转移. 每种转移里面再分类讨论. 然后数了数,总共有37种转移方式... 于是就是7k的代码.... #include <iostream> #include <cstring>…
题目链接: http://172.16.0.132/senior/#contest/show/2538/2 题目: 小S决定从某一个节点$u$开始对其子树中与$u$距离小于$K$的节点代表的花树进行采摘. 特别的,节点$u$代表的花树也会被采摘.依旧受限于精力,小S并不会亲自去采摘而是使用Extremely Strong的工具进行采摘. 我们定义一个工具的能力为$c$,小S会采摘的山树集合为$T$.那么小S能采摘到的山花数量$f_T = \prod _{i∈T} (a_i, c)$ 现在对于给定…
题目链接: https://jzoj.net/senior/#main/show/5893 题目: 题解: 考虑暴力怎么做,我们枚举左端点,维护一个栈,依次加入元素,与栈顶元素和栈内第二个元素相同时弹出栈顶和第二个元素.若某个时刻栈为空则说明当前区间是合法的,累加答案. 为什么相同就直接弹出呢?会不会当前的括号与之后的括号匹配呢?仔细想想发现二者都是合法的,不需要多次计算答案 现在优化这个暴力,从1开始,对于两个位置$i,j(i<j)$,若栈内的元素相同,那么说明$[i+1,j]$这一段是一个合…
题目链接: https://jzoj.net/senior/#main/show/5885 题目: 题解: 把$a$数组按升序排序 我们可以枚举$x$,发现对于任意$x$,最优情况下$y$一定等于$x+1$ 那么我们就是在一直$x$和$y$的前提下找$z$ 可以证明,在合法范围内,计算结果随着$a_z$的增大而单调增 证明就是化简一下这个式子$\frac{a_{z+1}-a_y}{a_{z+1}-a_x}>\frac{a_z-z_y}{a_z-a_x}(a_{z+1}>a_z>a_y&g…
题目链接: http://172.16.0.132/senior/#main/show/5905 题目: oi_juruo热爱一款名叫黑暗之魂的游戏.在这个游戏中玩家要操纵一名有 点生命值的无火的余灰在一张地图中探险.地图中有$n$个篝火(也就是存档点).在篝火处休息可以将生命值恢复满.每个篝火都会向其他篝火的其中之一连有一条通道(显然,通道是双向的),这些篝火之间都相互可达.也就是说,这是一张$n$个点,$n$条边的无向连通图.每条通道里都有一些怪物,经过oi_juruo的分析,他得到了每条边…
我看了一下其他大佬的题解,大部分都是拓扑排序加上DP.那么我想有的人是不明白为什么这么做的,拓扑排序有什么性质使得可以DP呢?下面我就提一下. 对一个有向无环图(Directed Acyclic Graph简称DAG)G进行拓扑排序,是将G中所有顶点排成一个线性序列,使得图中任意一对顶点u和v,若边(u,v)∈E(G),则u在线性序列中出现在v之前. (源自百度) 通俗的说就是,一张有向无环图的拓扑序可以使得任意的起点u,它的一个终点v,在序列中的顺序是u在前v在后 我下面先附上代码,然后在继续…
12.27 cf div3 解题报告 wxy.wxy,带上分拉,全场做了个无脑小白 比赛场地 A: T1,跟着模拟就好了 B: sort一遍之后 去除的数一定是a[1]或者a[n] 比较去除谁小就输出谁 C: 他的二进制有多少个1 如果>k说明无解 他的二进制位都放优先队列里 每次取出top,分成两半,再放回去,如果取出1或者为空,无解 直到size==k 输出就好了 wrong 1 re 3 : 数组开小了 D: 假设为a,b,c 则a的两个数一定包含一个b b中一定包含一个c 所以从1开始挨…
4273. [NOIP2015模拟10.28B组]圣章-精灵使的魔法语 (File IO): input:elf.in output:elf.out Time Limits: 1000 ms  Memory Limits: 262144 KB  Detailed Limits   Goto ProblemSet Description [背景介绍]“魔法???算了吧,这种东西我肯定学不了的啦!”明明是个剑士,却被眼前这位洋洋自得的精灵使——弗洛莉拖出去学魔法,真是个没事找茬的家伙……“没事啦.作…
272. [NOIP2015模拟10.28B组]序章-弗兰德的秘密 (File IO): input:frand.in output:frand.out Time Limits: 1000 ms  Memory Limits: 262144 KB  Detailed Limits   Goto ProblemSet Description 背景介绍弗兰德,我不知道这个地方对我意味着什么.这里是一切开始的地方.3年前,还是个什么都没见过的少年,来到弗兰德的树下,走进了封闭的密室,扭动的封尘已久机关…
过了这么久才来发解题报告,蒟蒻实在惭愧 /w\ Day1 T1 [思路] 模拟 [代码] #include<iostream> #include<cstring> #include<queue> #include<cmath> #define FOR(a,b,c) for(int a=(b);a<=(c);a++) using namespace std; ; int G[maxn][maxn]; int n,m; int main() { cin&g…
Description An ascending sorted sequence of distinct values is one in which some form of a less-than operator is used to order the elements from smallest to largest. For example, the sorted sequence A, B, C, D implies that A < B, B < C and C < D.…
Description 背景介绍弗兰德,我不知道这个地方对我意味着什么.这里是一切开始的地方.3年前,还是个什么都没见过的少年,来到弗兰德的树下,走进了封闭的密室,扭动的封尘已久机关,在石板上知道了这个世界最角落的最阴暗的东西.那种事情,从未忘怀,从未动摇,我还记得,那一天,我,里修,第一次拔起了剑…… 弗兰德的密室里,机关上方画着两棵树的字样,机关下方是一个有数字的刻度……弗兰德最高的两棵树,只要知道两棵树的共同的相似度就行了……给定两棵有根树,可以任意删除两棵树上的节点(删除一棵节点必须保证…
Description [背景介绍]古堡,暗鸦,斜阳,和深渊……等了三年,我独自一人,终于来到了这里……“终焉的试炼吗?就在这里吗?”我自言自语道.“终焉的试炼啊!就在这里啊!”我再一次自言自语道.“这背后可能有那个东西吗?”我自言自语道.“这背后一定有那个东西呢!”我又一次自言自语道.我沉默着,踏上黑漆漆的索桥,小心翼翼地,拿出锋利的注入我灵魂的双剑……“那么,我们开始吧……”我最后一次自言自语道. [题目描述]My soul of my sowrd!终焉的试炼即将到来,作为一名有修养的剑士,…
作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 双指针 记录起始位置 日期 题目地址:https://leetcode.com/problems/remove-element/ Total Accepted: 115693 Total Submissions: 341766 Difficulty: Easy 题目描述 Given an array and a value, remove all i…
T1 动态点分治 就是模拟..... 但是没有过!! 看了题解之后发现.... 坑点:有可能 \(x<=r\),但是…
最长路 链接: https://www.nowcoder.com/acm/contest/178/A 来源:牛客网 题目描述 有一张 \(n\) 个点 \(m\) 条边的有向图,每条边上都带有一个字符,字符用一个数字表示. 求以每个点为起点的最长路,输出走过的边的字符构成的字符串的字典序最小的方案. 为了方便,你需要这样输出方案: 如果最长路无限长,则输出Infinity 否则假设方案走过的边的字符依次为 \(w_1,w_2,\cdots,w_k\) ,输出\((\sum\limits_{i=1…
Description 经过了16个工作日的紧张忙碌,未来的人类终于收集到了足够的能源.然而在与Violet星球的战争中,由于Z副官的愚蠢,地球的领袖applepi被邪恶的黑魔法师Vani囚禁在了Violet星球.为了重启Nescafé这一宏伟的科技工程,人类派出了一支由XLk.Poet_shy和lydrainbowcat三人组成的精英队伍,穿越时空隧道,去往Violet星球拯救领袖applepi. applepi被囚禁的地点只有一扇门,当地人称它为“黑魔法师之门”.这扇门上画着一张无向无权图,…
2.种树(tree.pas/cpp/in/out) 问题描述: Fanvree 很聪明,解决难题时他总会把问题简单化. 例如,他就整天喜欢把图转化为树.但是他不会缩环,那他怎么转化呢? 这是一个有 n 个点 m 条双向边的图,Fanvree 会选定一个节点,然后删掉这个节点和这个点连出去的边, 如果变成了一棵树,那么这个节点便是可行的,什么是树呢?树也即无简单环的无向连通图. 告诉 Fanvree 可能的节点是什么. 输入: 第一行两个正整数 n 和 m,表示有 n 个点 m 条边,保证 n≥2…
题目链接: https://jzoj.net/senior/#main/show/6101 题目: 题解: 设$f_i$表示从节点$i$到节点$n$的期望时间,$f_n=0$ 最优策略就是如果从$i,j$之间存在边且$f_j<f_i$的话,那么就从$i$走到$j$ 有$f_i=\frac{1}{m}(\sum_{link[i][j]=1}min(f_i,f_j))+1+\frac{m-du_i}{m}f_i$ $du_i$是$i$的度数 即$du_if_i=\sum_{link[i][j]=1}…
题目链接: https://jzoj.net/senior/#contest/show/2686/2 题目: 题解: 说实话这题调试差不多花了我十小时,不过总算借着这道题大概了解了计算几何的基础知识 首先,若$1$号星与其他两颗星共线,那么显然新出现的 1 号星也必须在这条线上,因此可行的面积为 0 ,下文我们考虑 1 号星不与其他任意两颗星共线的情况 一个$O(n^2 log n)$的做法是枚举每一对星,$1$号星移动必然不能越过每一对星形成的直线,这样我们就可以通过半平面交解决这个问题 事实…
题目链接: https://jzoj.net/senior/#main/show/6080 题目: 题意: 给定$n,m,u,v$ 设$t_i=ui+v$ 求$\sum_{k_1+k_2+...+k_m=n}t_1^{k_1}t_2^{k_2}...t_m^{k_m}(k_1,k_2,...,k_m∈N)$ 算法一: 对于$m=1$的点,显然答案就是$t_1^n$,快速幂计算即可 获得$5$分 算法二: 对于$m=2$的点,$\sum_{k1+k2=n}t_1^{k_1}t_2^{k_2}=\f…
题目链接: http://172.16.0.132/senior/#main/show/4722 题目: DJL为了避免成为一只咸鱼,来找srwudi学习压代码的技巧.Srwudi的家是一幢h层的摩天大楼.由于前来学习的蒟蒻越来越多,srwudi改造了一个跳楼机,使得访客可以更方便的上楼.经过改造,srwudi的跳楼机可以采用以下四种方式移动:1.向上移动x层:2.向上移动y层:3.向上移动z层:4.回到第一层.一个月黑风高的大中午,DJL来到了srwudi的家,现在他在srwudi家的第一层,…
题目链接: http://172.16.0.132/senior/#main/show/5888 题目: 题解: 思路是这样的:两个数的最大公约数一定不会比这两个数的任意一个数大.因此我们把权值相等的看成一个点,先把这些点连起来算上贡献 考虑kruskal的做法,我们从大到小枚举边权,其实就是我们从大到小枚举最大公约数.假设当前枚举到i,我们再枚举$k_1$,$k_2$,判断$k_1i$,$k_2i$是否存在,若是存在再判断二者是否连通,如果没有连通就连起来算上i的贡献.或许有的人会想这样$2i…
题目链接: http://172.16.0.132/senior/#main/show/5166 题目: 题解: 这个没什么好讲的,就是注意生产者没人吃也不是食物链,这告诉我们要积累生物知识注意细节 #include<algorithm> #include<cstring> #include<iostream> #include<cstdio> #include<queue> using namespace std; typedef long l…
前言 本来在比赛上就想到最小生成树了,但不相信这道题那么简单,然后就没有然后了... 题目 给出一幅由n个点m条边构成的无向带权图. 其中有些点是黑点,其他点是白点. 现在每个白点都要与他距离最近的黑点通过最短路连接(如果有很多个黑点,可以选取其中任意一个),我们想要使得花费的代价最小.请问这个最小代价是多少? 注意:最后选出的边保证每个白点到离它最近的黑点的距离仍然等于原图中的最短距离. 分析 这道题最麻烦的地方就是最终搞成的图有可能有很多个联通块. 增加一个点:0点,让0点连接所有的黑点,边…