训练指南
gyarenas
这个作者很懒,什么都没留下…
展开
-
Robotruck
//单调队列优化//dist[i]表示i与(0,0)的距离, sum[i]表示从0->1->2->...i所走的距离, sw[i]表示∑w[j](j = 0, 1,...i), //table[i] = min(table[j]+dist[j+1]+dist[i]+sum[i]-sum[j]) (j //不难看出可以使用单调队列进行优化(其实我对单调队列使用的情况也不是很明确,直观上看出来的==!原创 2012-11-26 09:10:50 · 656 阅读 · 0 评论 -
Sharing chocolate
目要求只能横着切和纵着切,而且必须一次切到底,所以每次切割的巧克力只能是矩形,设l w分别为举行的的宽和长,S表示要把巧克力切割成块的集合,sum[S]表示其面积的和,只有l*w == sum[S]的状态才是有可能切割成功的,所以可以定义状态table[l][S]表示宽为l的矩形切割成状态为S的块是否可以成功,因为S和l确定了,w也就确定了,其中 w = sum[S]/l , table[l][S原创 2012-11-27 12:00:39 · 480 阅读 · 0 评论 -
Ancient Cipher
#include #include #include #include using std::sort;int count1[26], count2[26];char str1[110], str2[110];int main(){ while(~scanf("%s", str1)) { scanf("%s", str2); int原创 2012-11-27 20:12:20 · 606 阅读 · 0 评论 -
Building Designing
#include #include #include #include using std::sort;const int MAXN(500010);struct NODE{ int num, ab; friend bool operator < (const NODE &op1, const NODE &op2) { return op1原创 2012-11-27 20:13:52 · 536 阅读 · 0 评论 -
Chinese Mahjong
#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include原创 2012-11-13 11:40:03 · 434 阅读 · 0 评论 -
Colored Cubes
#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include原创 2012-11-13 09:00:14 · 415 阅读 · 0 评论 -
Processor Seoul 2008
求最大值最小化,比较容易想到二分,如何判断是否合法呢,采用的策略为执行当前时间内可以执行的结束时间最早的任务,题目时间点都是 给自己提个醒, 注意:对地址操作的最小堆(类似于间接排序), 在内存回收过程中,回收的应为间接数组的第一个单元即p[1],而不是最后一个单元p[size],因为操作的是地址所以p[1]=p[size],实际上相当于把p[1]所记录的地址删掉了, 所以回收的应为p[1]所原创 2012-11-29 21:58:11 · 577 阅读 · 0 评论 -
Fabled Rooks
#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include //#pragm原创 2012-11-30 21:50:27 · 398 阅读 · 0 评论 -
Beijing Guards LA3177
#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include //#pragm原创 2012-11-17 15:45:01 · 783 阅读 · 0 评论 -
newwork Seoul 2007
#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include //#pragm原创 2012-11-17 10:19:45 · 534 阅读 · 0 评论 -
Image is Everuthing LA2995
#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include //#pragm原创 2012-11-17 15:22:56 · 764 阅读 · 0 评论 -
CALCULATOR CONUNDRUM
//判圈法#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include //原创 2012-11-17 21:12:19 · 367 阅读 · 0 评论 -
The Trip. 2007
给出一组数,把这组数分成最少的组,并且使所有组每组内数字的个数的最大值最小#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include原创 2012-12-01 12:31:18 · 410 阅读 · 0 评论 -
Slalom
题意描述比较恶心,首先需要明确题目给出的坐标描述的不是类似横版游戏的纵切图,实际上把整个斜面当做一个平面,详细说明见图,N个宽度为W的”门“, 横向移动的速度不能超过vh, S个速度为v[i]的滑雪板,滑雪板的速度是纵向移动的速度,完成比赛必须通过所有的门,求能够完成比赛的速度最快滑雪板的速度#include #include #include #include #in原创 2012-12-01 17:36:35 · 484 阅读 · 0 评论 -
Airport Seoul 2009
#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include us原创 2012-12-02 13:15:08 · 413 阅读 · 0 评论 -
Meteor Seoul 2007
#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include //#pragm原创 2012-11-18 16:28:07 · 457 阅读 · 0 评论 -
City Game
up[i][j]表示从格子(i,j)向上所能到达的最大长度,left[i][j]表示格子(i,j)长度为up[i][j]的悬线先做所能达到的最大长度,right[i][j]类似#include #include #include #include #include #include #include #include #include #include #include原创 2012-11-19 12:19:47 · 447 阅读 · 0 评论 -
Jurassic Remains
密码学中的中途相遇攻击原理#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #in原创 2012-11-21 14:19:36 · 539 阅读 · 0 评论 -
Distant Galaxy
#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include原创 2012-11-20 21:25:45 · 535 阅读 · 0 评论 -
Installations Daejon 2010
#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include us原创 2012-12-04 20:37:10 · 461 阅读 · 0 评论 -
The Bus Driver Problem
#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include us原创 2012-12-05 21:29:17 · 452 阅读 · 0 评论 -
Game of Sum
记忆化搜索#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #inc原创 2012-11-22 22:11:04 · 434 阅读 · 0 评论 -
Prince and Princess
//用LIS解决其中一个串没有相同元素的LCS #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include原创 2012-11-22 20:35:41 · 581 阅读 · 0 评论 -
Tian Ji--The Horse Racing Shanghai 2004
动态规划版:#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #原创 2012-12-05 21:04:27 · 490 阅读 · 0 评论 -
Hacker Crackdown
数学模型: P1,P2,P3,...Pn 分成尽量多的组,使每组中所有集合的并集等于全集,其中集合P[i]表示计算机i及其相邻的计算机 状态转移方程为table[S] = max(table[S-S0]+1),(其中集合S0要满足S0是S的子集且,∑P[i] = U,( i∈S0))#include #include #include #include #include #原创 2012-11-24 09:28:49 · 524 阅读 · 0 评论 -
Placing Lampposts
树上的DP,有俩个优化条件在照亮所有的路径的情况下使用的路灯的数量最少x1,且在使用灯最少的情况下使得被俩个灯同时照亮的路最多(可以转化为使得只被一个路灯照的路径最少x2),这种优化条件可以用x = M*x1+x2作为目标函数记忆化搜索#include #include #include #include #include #include #include #inc原创 2012-11-24 11:24:16 · 498 阅读 · 0 评论 -
Hypertransmission
#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include us原创 2012-12-07 20:53:32 · 458 阅读 · 0 评论 -
Maximum sum on a torus Uva 10827
#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include us原创 2012-12-08 14:51:09 · 449 阅读 · 0 评论 -
Sumsets Uva10125 poj
//3sum问题#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #in原创 2012-12-08 22:09:24 · 344 阅读 · 0 评论 -
Foreign Exchange uva 10763
#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include us原创 2012-12-09 20:09:22 · 421 阅读 · 0 评论 -
Compound Words 10391
#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include us原创 2012-12-09 21:03:52 · 381 阅读 · 0 评论 -
Wine Trading in Gergovia
#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include us原创 2012-12-10 11:12:39 · 643 阅读 · 0 评论 -
Average LA4726 Seoul2009
斜率&单调队列《浅谈数形结合思想在信息学竞赛中的应用》#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include原创 2012-12-16 21:33:22 · 669 阅读 · 0 评论 -
Restaurant LA4851
一下所说的距离皆为哈密顿距离如果一个点X对于任意的已知点Y,要么X比Y距离A近, 要么X比Y距离B近,则X是一个合法点,求合法点的个数,因为在A,B点分别有一个餐厅,而且A,B点的纵坐标相同,所以A.x左边和B.x右边的点都不合法,而假设此时只有A,B俩点,则合法点如下图所示(实点为合法点)从中不难发现规律现在假设一个点X在AB连线的上方,则X所限制的合法区域为原创 2012-12-23 12:15:00 · 880 阅读 · 0 评论 -
Cricket Field poj 2173
这题总矩形很大,但是障碍点数量很小,以为每个小矩形的边必定过一点或者是大矩形边界,所以可以按照点暴力搞,再把矩形的宽作为边长,复杂度应该是O(n^3),图省事写了个O(n^3logn)的。#include #include #include #include #include #include #include #include #include #include原创 2012-12-23 21:25:25 · 798 阅读 · 0 评论 -
Genome Evolution LA5052
#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include u原创 2012-12-24 09:16:34 · 614 阅读 · 0 评论 -
Partitioning by Palindromes
#include #include #include #include #include using std::min;const int MAXN(1010);const int INFI((INT_MAX-1) >> 1);char str[MAXN];int table[MAXN];bool is_palindromes(int l,原创 2012-12-24 11:31:19 · 786 阅读 · 0 评论 -
DNA Regions
设X 为字符不同的位数, Y为字符相同的位数,则限制条件可以表示为X/(X+Y) X*100 0,建立一个数组arr,如果第i位的字符相同则arr[i]赋值为p,如果不相同赋值为p-100,则题目的要求可以变为在该数组中找出最长的子串是得子串的和大于等于0jump[i]表示从i+1开始的最大和(>= 0)连续序列的结尾下标可以同过O(n)的递推求出,从运行时间来看时间复杂度应该接近O原创 2012-12-24 21:34:01 · 454 阅读 · 0 评论 -
Salesmen LA4256 Seoul2008
#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include u原创 2012-12-25 09:37:21 · 782 阅读 · 0 评论 -
Palindromic Subsequence UVA11404
逆序后求LCS,然后找出i+j == len情况的最长最小的LCS(子序列在1~i中出现,且其逆序列在i+1到len中出现,对应于回文串偶数情况), (i+j == len-1情况的最长最小的LCS+str[i+1])(子序列在1~iz中出现,且其逆序在i+2到len中出现,注意其中包括子序列为空的情况,即回文串中只有一个字符,对应于回文串奇数情况),从这俩种情况中找出最优解原创 2012-12-27 21:29:51 · 1385 阅读 · 0 评论