摘要:
有关1<<64。测试: using namespace std; #include <iostream> int main(){ cout<<(1<<64)<<endl; cout<<(1ll<<64)<<endl; cout<<(1ull<<64)<<endl; int k=64; cout<<( 阅读全文
摘要:
题目 有若干个国家,第$i$个国家有$a_i$个部落。 国家之间会随机地发生战争,对于两个国家$A$和$B$(分别表示其部落的数目),发生战争后: 有$p$的概率变成国家$A+1$和$B-1$个国家$1$。 有$p$的概率变成国家$B+1$和$A-1$个国家$1$。 有$1-2p$的概率变成$A+B 阅读全文
摘要:
题目 有个排列$p$。 对于两个位置$i$和$j$,如果有边从$i$连向$j$,当且仅当$p_i>p_j$且对于任意$k\in (\min(i,j),\max(i,j))$,\(p_k<p_j\)。 你要选择一些点,选择某个点之后这个点以及其连向的点会被覆盖。 求要覆盖所有点最少需要的点。 支持交换 阅读全文
摘要:
题目 给你一棵树,每个点有点权。 一个点的贡献为:所有以它为编号最小的(即如果有两个重心,它是编号小那个)重心的大小为$k$的树连通块的方案数乘点权。 问贡献和。 \(n\le 5*10^4\) \(k\le 500\) 首先$O(nk2)$的没有人想不到吧,直接树上背包(这里时间复杂度$O(nk) 阅读全文