12 2013 档案
摘要:先将树DFS一次得到一个序列,按这个顺序把节点上的苹果数放到一个一维数组,每棵子树的苹果数就相当于数组对应的一段元素的和。这个数组我们用树状数组来维护就可以加快速度。 1 #include 2 #include 3 #pragma warning(disable:4996) 4 using namespace std; 5 int bit[100001], a[100001];//bit -- binary indexed tree 6 int lowBit(int x){ 7 return x & (-x); 8 } 9 void add(int idx, int size, i..
阅读全文
摘要:这道题其实是挺简单的。首先很容易发现最多人用的颜色的人数如果大于n/2,就肯定不能让全部人都成功戴上两只不同颜色的手套。反过来想,如果这个人数小于等于n/2又如何呢?的确,这就能让全部人都能戴上两只不同颜色的手套(每个人都留一只自己原本的,再要别人的一只手套就可以了)。 1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7 using namespace std; 8 struct Child{ 9 int color, num, mat;10 };11 bool partition_cmp(...
阅读全文

浙公网安备 33010602011771号