牛牛的路径和 思路: 要求计算二进制按位与下的结果, 在二进制下只有连续的1会有值, 所以记录点权二进制下的0/1信息,树形dp求值,树形dp求值(好笼统呀): 即当前节点可以产生的贡献就是当前结点第i为上连续1的数量与其儿子第i为连续1的数量乘积 乘对应位置的值(即1<<i)的和好乱 每个结点单独也算贡献。 代码展示 #include <iostream> #include <algorithm> #include <vector> using namespace std; const int maxn = 1e5 + 7; typedef...