hihocoder
oranges_c
落寞是岁月的痕迹
展开
-
hiho一下 第136周-优化延迟(二分)
题目链接 二分缓冲区k的大小,用优先队列模拟,不断记录满足条件的最小值#include <cstdio> #include <iostream> #include <cstring> #include <algorithm> #include <queue> using namespace std; typedef long long LL; const int maxn =原创 2017-02-09 16:16:15 · 222 阅读 · 0 评论 -
hiho一下 第137周-建造基地(背包dp)
题目链接 官方题解 初一看很容易看出是完全背包的dp。 但是还要考虑建设值的溢出,也就是说dp[k]不一定是成本最小的。 我们可以往前推一步,假设dp[k],dp[k+1]…中最小的为dp[x] 那么dp[x] 肯定是由小于k的某个状态y,dp[y]+a[i]递推而来。 我们就枚举y值来更新x值。把大于k的x值都算在k上。那么最后答案就是dp[k]的相加。 时间原创 2017-02-13 15:20:56 · 246 阅读 · 0 评论 -
hiho一下 第140周-清理海报(DAG+dfs)
题目链接官方题解 题解里面貌似有错 这里应该还有条3->4的边有人会问为什么会有2->4这条边,从图上看2的四个点都被覆盖了。 这就是建图时要注意的地方了,建图时我们只要根据两个矩形是否相交建图就可以了,不必去管矩形的四个点是否被覆盖。 因为虽然2的四个点都被覆盖,但是2是作为1和4之间的关联的。撕1时,会先撕去2,然后再撕去4.所以这里要有条2->4的边。这样在原创 2017-03-05 12:52:36 · 275 阅读 · 0 评论 -
hiho一下-第104周-平衡树·Splay
题目链接这题可以直接用set做。 这里记下模板。#include <bits/stdc++.h> using namespace std; #define MINK 0 #define MAXK 1000000001 struct Node{ Node *father,*left,*right; int v; Node(int k, Node* f)原创 2017-03-16 18:56:59 · 325 阅读 · 0 评论