首页 > TAG信息列表 > zyb
HDU5593 ZYB's Tree
求 \(n\) 个点的树上对于每个点距离小于 \(k\) 的点的数量(边权均为 \(1\) )。 \(n\leq 5\times 10^5,k\leq 10\) 。 设 \(f[u][i]\) 表示距离 \(u\) 点 \(i\) 距离以内并且在子树内的点,那么在 \(DFS\) 时可以用 \(O(nk)\) 的时间处理 \(f[u][i]=\sum f[v][i-1]\) ,其中 \(v\) 是 \(uNOIP第一阶段成绩总结
联赛模拟测试33 阶段排名 1 合并集合 环状所以复制一遍放在后面,区间DP一下就好了,f[i][j]表示区间i到j所获收益的最大值,枚举断点转移 s[i][j]表示将区间i到j的集合的元素个数,就是不相同的数的个数,考场上用的bitset,其实开个桶,n2扫一遍就行了 Show Code #include <cstdio> #hdu 6468 zyb的面试
题目传送门 #include<bits/stdc++.h> using namespace std; inline int read() { int x=0,k=1;char c=getchar(); while(c<'0' || c>'9'){if(c=='-') k=0;c=getchar();} while(c>='0' && c<='[JZOJ6346]:ZYB和售货机(拓扑+基环内向森林)
题目描述 可爱的$ZYB$来到一个售货机前。 售货机里有一共有$N(\leqslant 10^5)$个物品,每个物品有$A_i$个。自然,还有$N$个购买按钮。正常情况下,按下第$i$个按钮,需要支付$C_i$的钱,然后会跳出一份物品$i$。如果该物品卖完了,按下此按钮无效。 但是,这台售货机的电路连接出【JZOJ6346】ZYB和售货机
description analysis 其实这个连出来的东西叫基环内向树 先考虑很多森林的情况,也就是树根连回自己 明显树根物品是可以被取完的,那么买树根的价钱要是儿子中价钱最小的那个 或者把那个叫成收益,也就是选择所有儿子中收益最大的儿子 既然树根可以取完,同理所有非叶子节点也可以被