![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
NOIP
liaoxiyan123
这个人不懒,但什么都没写。
展开
-
NOIP2018D1T3赛道修建
题目描述一道让人受益匪浅的树形DP+贪心二分题C 城将要举办一系列的赛车比赛.在比赛前,需要在城内修建m条赛道.C 城一共有n个路口,这些路口编号为 1,2,…,n1,2,…,n,有 n-1n−1 条适合于修建赛道的双向通行的道路,每条道路连接着两个路口。其中,第 ii 条道路连接的两个路口编号为ai{a_i}ai和bi{b_i}bi,该道路的长度为li{l_i}li.借助这n-1条道路,从任何一个路口出发都能到达其他所有的路口。一条赛道是一组互不相同的道路e1,e2,…,ek{e_1,e_原创 2020-08-04 11:17:50 · 390 阅读 · 0 评论 -
DP起手练习8(路径压缩思想)
题目描述P1052 过河【NOIP2005提高T2】在河上有一座独木桥,一只青蛙想沿着独木桥从河的一侧跳到另一侧。在桥上有一些石子,青蛙很讨厌踩在这些石子上。由于桥的长度和青蛙一次跳过的距离都是正整数,我们可以把独木桥上青蛙可能到达的点看成数轴上的一串整点:0,1,…,L{0,1,…,L}0,1,…,L(其中L{L}L是桥的长度)。坐标为0的点表示桥的起点,坐标为L{L}L的点表示桥的终点。青蛙从桥的起点开始,不停的向终点方向跳跃。一次跳跃的距离是S到T{S到T}S到T之间的任意正整数(包括S,T{S,原创 2020-08-01 10:07:26 · 171 阅读 · 0 评论 -
NOIP2018D2T1旅行
题目描述*注:由于本题是个人A的第一道提高组蓝(luogu)题,所以我将把做这道题的解题思想详细记录下来一遍复习.普通版P5022变态 加强版P5049(目前加强过不了TAT)小Y是一个爱好旅行的OIer.她来到 X 国,打算将各城市都玩一遍.小Y了解到, X国的n个城市之间有m条双向道路.每条双向道路连接两个城市.不存在两条连接同一对城市的道路,也不存在一条连接一个城市和它本身的道路.并且,从任意一个城市出发,通过这些道路都可以到达任意一个其他城市.小 Y 只能通过这些 道路从一个城市前往另一原创 2020-07-31 16:53:10 · 250 阅读 · 0 评论 -
NOIP2018对称二叉树(树形结构的基础处理)
题目描述传送门一棵有点权的有根树如果满足以下条件,则被轩轩称为对称二叉树:1.二叉树;2.将这棵树所有节点的左右子树交换,新树和原树对应位置的结构相同且点权相等。下图中节点内的数字为权值,节点外的id{id}id表示节点编号。现在给出一棵二叉树,希望你找出它的一棵子树,该子树为对称二叉树,且节点数最多。请输出这棵子树的节点数。注意:只有树根的树也是对称二叉树。本题中约定,以节点T为子树根的一棵“子树”指的是:节点T和它的全部后代节点构成的二叉树。输入格式第一行一个正整数n,表示给定的树的原创 2020-07-31 14:10:35 · 479 阅读 · 0 评论 -
能量项链(区间DP模板)
题目描述在Mars星球上,每个Mars人都随身佩带着一串能量项链.在项链上有N颗能量珠.能量珠是一颗有头标记与尾标记的珠子,这些标记对应着某个正整数.并且,对于相邻的两颗珠子,前一颗珠子的尾标记一定等于后一颗珠子的头标记.因为只有这样,通过吸盘(吸盘是Mars人吸收能量的一种器官)的作用,这两颗珠子才能聚合成一颗珠子,同时释放出可以被吸盘吸收的能量.如果前一颗能量珠的头标记为m,尾标记为r,后一颗能量珠的头标记为r,尾标记为n,则聚合后释放的能量为m×r×n(Mars单位),新产生的珠子的头标记为m,尾标原创 2020-07-20 14:42:44 · 91 阅读 · 0 评论 -
CSPS2019D1T2毒瘤括号树
题目背景本题中合法括号串的定义如下:() 是合法括号串。如果 A 是合法括号串,则 (A) 是合法括号串。如果 A,B 是合法括号串,则 AB 是合法括号串。本题中子串与不同的子串的定义如下:字符串 S 的子串是 S 中连续的任意个字符组成的字符串.S 的子串可用起始位置 l 与终止位置 r 来表示,记为 S (l,r)1≤l≤r≤∣S∣,∣S∣表示 S 的长度).S 的两个子串视作不同当且仅当它们在 S 中的位置不同,即 l不同或 r 不同.题目描述一个大小为 n 的树包含 n 个结点和原创 2020-07-17 10:54:40 · 228 阅读 · 0 评论 -
luogu P1083 借教室(二分)
此题为NOIP2012D2T2(水题 )本题主要是运用二分解决问题(百万的数据使我这种不会打线段树的蒟蒻只能想到二分QAQ)以下为代码:#include<bits/stdc++.h>using namespace std;int n,m,L,R,mid,maxx=-1;int a[1001000],b[1001000],l[1001000],r[1001000],zhi[1001000],nest[1001000];//数组开大inline int re(){int i=0;ch原创 2020-05-08 20:22:57 · 163 阅读 · 0 评论