Code: #include<cstring> #include<algorithm> #include<cstdio> using namespace std; const int maxn = 2500 + 4; const int inf = 100000000; int f[maxn], sumv[maxn]; int main() { freopen("r.in","r",stdin); freopen("r.…
传送门:http://www.usaco.org/index.php?page=viewproblem2&cpid=126 好题啊好题,一开始就输给了这道题的想法! 先把原始状态以及目标状态换一种表示方式,比如输入数据是的初始状态是1 2 3 4,表示成1 2 2 3 3 3 4 4 4 4,目标状态是4 3 2 0,表示成1 1 1 1 2 2 2 3 3.那么这题就是求把原始状态转化为目标状态的最小代价,只有三种操作, add, remove, transport,所以这就是一个求Edit…
Home Problem Status Contest Add Contest Statistic LOGOUT playboy307 UPDATE POJ - 3624 Charm Bracelet Time Limit: 1000MS   Memory Limit: 65536KB   64bit IO Format: %I64d & %I64u Submit Status Description Bessie has gone to the mall's jewelry store and…
[题解] 显然是个DP题. 设$f[i]$表示送$i$头牛过河所需的最短时间,预处理出$t[i]$表示一次性送i头牛过河所需时间,那么我们可以得到转移方程:$f[i]=min(f[i],f[i-j]+t[j]+t[0])$ (这里的$t[0]$指的是FJ独自过河的时间) 这样就可以做一个$n$方的DP了 #include<cstdio> #include<algorithm> #define rg register #define inf (1e9) #define N (1000…
DP/斜率优化 Orz Hzwer…… 想到排序了,但没想到其实可以将序列转化为x递增且y递减的序列……因为x是递增的,若y[i]>y[i-1]那么第i-1个就足够小……以至于可以在搞定第 i 个的同时顺便带走…… 这次仔细写一下斜率优化的过程吧- 方程:$ f[i]=min\{ f[j]+x[i]*y[j+1] \} $ 若 $j>k$ 且 决策$j$更优,则有:\[ \begin{aligned} {f[j]+x[i]*y[j+1]} &<  {f[k]+x[i]*y[k+1…
[题目链接] https://www.lydsy.com/JudgeOnline/problem.php?id=1597 [算法] 首先将所有土地按长为第一关键字 , 宽为第二关键字排序 显然 , 当i > j , 且yi >= yj时 , 土地j没有用 , 不妨使用单调栈弹出所有没有用的土地 用fi表示前i块土地的最小经费 显然 , fi = min{ fj + aibj } 斜率优化即可 时间复杂度 : O(N) [代码] #include<bits/stdc++.h> usi…
一道图论的最短路题.一开始连最短路都没想到,可能是做的题太少了吧,完全没有思路. 题目大意: FJ的农场周围分布着N根电话线杆,任意两根电话线杆间都没有电话线相连.一共P对电话线杆间可以拉电话线,第i对电话线杆的两个端点分别为A_i.B_i,它们间的距离为L_i .数据中保证每对{A_i,B_i}最多只出现1次.FJ的任务是找一条将1号和N号电话线杆连起来的路径.电信公司最终同意免费为FJ连结任意K对电话线杆.此外的电话线,FJ需要为它们付的费用,等于其中最长的电话线的长度(每根电话线仅连结一对…
题目大意: 一共有N (1 ≤ N ≤ 1,000)个电线杆,有P P (1 ≤ P ≤ 10,000)对电线杆是可以连接的, 用几条线连接在一起的电线杆之间都可相互通信,现在想要使得电线杆1和电线杆N能相互通信, 并且电线公司提出KK (0 ≤ K < N)条电线是可以免费使用的, 当使用电线的数量超过K条,超出的电线要收费, 收的总费用为去掉免费使用的K条电线之后最长的那条电线的长度. 问最少费用是多少 Input * Line 1: Three space-separated intege…
题目大意: 输入n k,1-n的排列,k次操作 操作P:输入一个m 输出第m个排列 操作Q:输入一个排列 输出它是第几个排列 Sample Input 5 2P3Q1 2 5 3 4 Sample Output 1 2 4 3 55   康拓展开裸题 然而因为用了getchar(); 所以一直在超时 康拓展开:http://www.cnblogs.com/dong008259/archive/2011/12/12/2283436.html #include <bits/stdc++.h> us…
http://cojs.tk/cogs/problem/problem.php?pid=714 在hzwer的刷题记录上,默默地先跳过2题T_T...求凸包和期望的..T_T那是个啥..得好好学习 看到这题,. 太水了. 按价值排序后计算即可.(本来不想放题解的,但是为了满足下自己的虚荣心吧) #include <cstdio> #include <cstring> #include <cmath> #include <string> #include &l…