传送门:【codechef】 Prime Distance On Tree 点分治+FFT水题……竟然n*n爆int没发现…… 而且NTT TLE,FFT跑的超级快…… my code: my~~code: #include <bits/stdc++.h>using namespace std ;typedef long long LL ;#define clr( a , x ) m
,只要知道dis[i][j]=dis[i][root]+dis[j][root]-2*dis[Lca(i,j)][root]. 其中root为树的根节点,LCA(i,j)为i,j的最近公共祖先。 所以我们先把所有的询问储存下来,然后离线直接查询。复杂度是o(n+q)的。 VIE #include<cstdio>#include<algorithm>#include<i
暗的连锁 题目描述 Dark 是一张无向图,图中有 N 个节点和两类边,一类边被称为主要边,而另一类被称为附加边。Dark 有 N−1 条主要边,并且 Dark 的任意两个节点之间都存在一条只由主要边构成的路径。另外,Dark 还有 M 条附加边。 你的任务是把 Dark 斩为不连通的两部分。一开始 Dark 的附加边都处于无敌状态,你只能选择一条主要边切断。一旦你切断了一条主要边,Dark
声明:本文部分内容摘自OI Wiki网站。详情可自行查看学习。 洛谷 P9233 题目实际上是蓝桥杯 2023 年 A 组省赛的一道题。题干大致的意思是,给定一个含有 n n n 个结点,并且以 1 1 1 为根的一棵树,每个节点 i i i 都有一个颜色 C i C_i Ci,问这棵树有多少个子树是颜色平衡树。其中,如果一棵树中存在的每种颜色的结点个数都相同,则我们称它是
传送门 题目描述 一颗树,n个点(1-n),n-1条边,每个点上有一个权值,求从1出发,走k步,最多能遍历到的权值。 分析 首先我们可以去dfs每一个为为根节点的时候,子树走 k k k步的时候的最大权值,但这里涉及到一位问题,因为每一条边可以重复走,所以会不会有回头的情况 我们用 f [ i ] [ j ] [ 0 / 1 ] f[i][j][0/1] f[i][j][0/1]表示在 i
传送门 题目描述 在回家的路上,凯伦决定到超市停下来买一些杂货。 她需要买很多东西,但因为她是学生,所以她的预算仍然很有限。 事实上,她只花了 b b b美元。 超市出售 N N N种商品。第 i i i件商品可以以 c i c_{i} ci美元的价格购买。当然,每件商品只能买一次。 最近,超市一直在努力促销。凯伦作为一个忠实的客户,收到了 n n n张优惠券。 如果凯伦购买 i i i次商
题目链接 闇の連鎖 题目描述 传说中的暗之连锁被人们称为Dark。 Dark是人类内心的黑暗的产物,古今中外的勇者们都试图打倒它。 经过研究,你发现Dark呈现无向图的结构,图中有 N N N个节点和两类边,一类边被称为主要边,而另一类被称为附加边。 Dark 有 N – 1 N–1 N–1 条主要边,并且 Dark 的任意两个节点之间都存在一条只由主要边构成的路径。 另外,Dark
树上计算 Problem:1330 Time Limit:1000ms Memory Limit:65535K Description 给出一棵以 1 为根的树,初始每个顶点的权值为 0 。现有两种操作: 1 x 代表将顶点 x 的权值加一 2 x 询问顶点 x 的子树(包含x本身)的权值和是多少 Input 第一行样例个数