摘要: "比赛详情" 本次练习赛已收录至 "2019/9/22 本周总结" "tree" 给定一棵无根树,求使得 所有节点深度和 最大的根节点. 思路 考虑先令$1$为根,$tot$为此时所有节点深度和,预处理$size(x)$表示$x$子树的大小.设$u$为$1$的某个儿子,显然从$1$走到$u$时,有: 阅读全文
posted @ 2019-09-20 18:15 TaylorSwift13 阅读(197) 评论(0) 推荐(0) 编辑
该文被密码保护。 阅读全文
posted @ 2019-09-16 17:17 TaylorSwift13 阅读(4) 评论(0) 推荐(0) 编辑
该文被密码保护。 阅读全文
posted @ 2019-09-15 17:25 TaylorSwift13 阅读(2) 评论(0) 推荐(0) 编辑
摘要: 本次模拟赛已收录至 "2019/9/15 本周总结" stick 题意 有$k$根火柴棒,将这$k$根火柴棒恰好用完,能拼出的最小和最大的数分别是多少. 思路 最大的数规律很明显. 对于最小的数,爆搜打表找规律,发现大于某个值之后出现类似循环节的结构. 打表代码 include int F[]={6 阅读全文
posted @ 2019-09-15 16:54 TaylorSwift13 阅读(198) 评论(0) 推荐(0) 编辑
摘要: 本题已收录至 "2019/9/15 本周总结" 题目 【问题描述】 Hja有一棵$n$个点的树,树上每个点有点权,每条边有颜色.一条路径的权值是这条路径上所有点的点权和,一条合法的路径需要满足该路径上任意相邻的两条边颜色都不相同.问这棵树上所有合法路径的权值和是多少. 【输入格式】 第一行一个数$n 阅读全文
posted @ 2019-09-14 16:14 TaylorSwift13 阅读(235) 评论(2) 推荐(0) 编辑
摘要: 题意 给定一棵无根树,删除或连接一条边的代价为$1$,求把树变为环的最小代价. 前置思路 如果删除了$k$条边,使得树变成$(k+1)$条链,再用$(k+1)$次连接操作把树变成一个环,那么总代价为$(2 \times k +1)$. 问题转化为求$k$的最小值,即 最少能将一棵树分为多少条链 . 阅读全文
posted @ 2019-09-07 17:49 TaylorSwift13 阅读(216) 评论(0) 推荐(0) 编辑
摘要: A.一道图论神题(god.cpp) "题目链接" 题意 给定一张无向图,每个点有正点权,删掉一个点的代价为 与它相连的所有未被删除的节点的权值和 ,求删掉所有点的最小代价. 解法 考虑任意两个相连的点$u$和$v$. 设$u$点权值为$a$. $v$点权值为$b$. 与$u$相连的节点的权值和,减去 阅读全文
posted @ 2019-09-03 18:17 TaylorSwift13 阅读(125) 评论(0) 推荐(0) 编辑
摘要: 这篇文章咕了 阅读全文
posted @ 2019-08-31 09:07 TaylorSwift13 阅读(153) 评论(0) 推荐(0) 编辑
摘要: A.准备(preparing.in) 已知$p$为大于$2$的质数,从$1...2p$中选择$p$个数,使得这$p$个数的和能被$p$整除,求总方案数. 思路1:($p\le 30$) 动态规划打表. cpp include long long Ans[]={0,0,0,8,0,52,0,492,0 阅读全文
posted @ 2019-08-29 19:51 TaylorSwift13 阅读(183) 评论(0) 推荐(0) 编辑
摘要: A.挑战(challenge.cpp) 首先令$x_i=max(a_i k,0)$,即破坏第$i$个防御区域的代价. 设$dp_i$表示从$1...i$需要的最小代价,有状态转移方程:$dp_i=min(dp_j)+x_i$,其中$i L\le j\le i 1$. 初始化边界$dp_0=0,dp_ 阅读全文
posted @ 2019-08-27 21:50 TaylorSwift13 阅读(154) 评论(0) 推荐(0) 编辑