**题意:**n个宽度为1,高度为ai的板子,横竖一笔刷漆,问最小需要多少笔刷完。
思路:贪心加分治,首先对于一些[l, r]序号区间内的板子,竖着刷为(r-l+1)花费,横着刷的话肯定要先刷到最小的长度的那个,然后分成左右两半,然后分治重复递归。
#include<iostream>
#include<string>
#include<cstdio>
#include<cstring>
#include<bitset>
#include<algorithm>
#include<map>
#include<set>
#include<queue>
#include<vector>
#include<cstdlib>