
分治
做不完的ACM
加油,努力
展开
-
归并求逆序对POJ2299
#include <stdio.h> #include <string.h> #include <stdlib.h> using namespace std; typedef long long ll; const int maxn = 505050; int a[maxn], n, b[maxn]; ll res = 0; void merge_union(...原创 2018-05-08 14:50:12 · 147 阅读 · 0 评论 -
SPOJ:House Fence(分治&DP)
题目链接:https://vjudge.net/problem/SPOJ-NPC2014B题意:有N个宽度为1的相邻围栏,每个有高度a[i],现在有一把宽度为1的刷子,可以横着刷或者竖着刷,问最少多少次刷完题解:对于每个区间,我们的最优情况的全部竖着刷, 或者横着刷全部公有的部分,其他的继续讨论。由于每次最小横着刷一个,所以讨论次数不超过N。复杂度低于O(N^2)代码:#include <b...原创 2018-05-27 13:34:28 · 302 阅读 · 0 评论