自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(108)
  • 资源 (2)
  • 收藏
  • 关注

原创 二分查找中的死循环

二分算法是我们经常会用到的一个算法。它是分治法的一个应用。不过,虽然他写起来貌似很简单,但是却很容易写错。下面我们讨论一下二分的死循环问题。(这里讨论的是整数的二分问题,浮点数的二分不容易死循环)1.查找的元素确定,值唯一或者不存在 这种情况等下,我们的流程分为三个分支:(相等、小于、大于)。这类不容易死循环,代码如下:if ( data[mid] ==......

2014-09-13 17:35:37 7221 4

原创 卡特兰数(Catalan UVa 991 10303 10007 1478)

一、介绍        卡塔兰数是组合数学中一个常在各种计数问题中出现的数列。以比利时的数学家欧仁·查理·卡塔兰(1814–1894)命名。        历史上,清代数学家明安图(1692年-1763年)在其《割圜密率捷法》最早用到“卡塔兰数”。        卡特兰序列的前11项为:1, 1, 2, 5,14, 42, 132, 429, 1430, 4862, 16796,。

2014-09-12 17:17:58 2213 2

原创 zoj 1245 - Triangles

题目:找到所给的图形中的最大三角形。

2014-09-30 17:29:34 847

原创 zoj 3034 - The Bridges of Kolsberg

题目:在河两端有两排服务器,现在要把河两边相同的品牌型号的机器连起来,每个电脑有个值,           每个机器只能与另一台机器链接,并且不同的链接不交叉,现在要求链接的电脑总之最大。分析:dp,最大公共子序列,字符串。还要加一个字符串处理。说明:(2011-09-19 11:08)。#include #include #include #define max( a,

2014-09-30 17:02:38 936

原创 zoj 2068 - Chopsticks

题目:很多人在一起吃饭,有两组单支的筷子,定义badness为一对筷子长度差的平方,求最小的badness和。分析:dp,最大公共子序列类似物。             这里利用数学关系找到一个结论:              a              所以最优解一定不会交叉,然后先用元素少的串,求长串的LCS的即可;             权值计算用长度差的平方,而不是

2014-09-30 16:48:37 784

原创 UVa 750 - 8 Queens Chess Problem

题目:计算一定经过给定点的八皇后。分析:搜索。因为八皇后只有92组解,直接计算出92组解,然后查询输出即可。            这里我使用了位运算来计算八皇后,减少代码量。            先考虑一个皇后的影响,每次下一层攻击的点和上一次的关系如下:            一个皇后会影响自己下方和左右两个斜的方向(从上往下搜索);            向左的斜的

2014-09-30 16:12:59 4435

原创 UVa 10190 - Divide, But Not Quite Conquer!

题目:给你一个等比数列的首项和公比的倒数,如果尾项是1输出这个数列,否则输出Boring!。分析:数学题。按照题目要求数列是递减的,所以公比的倒数一定要大于1,即m > 1。            然后在附加一个条件n  > m判断位数是否为1即可。说明:这种卡题意的题目好纠结╮(╯▽╰)╭。#include #include #include using namespac

2014-09-30 15:58:11 5851

原创 UVa 10170 - The Hotel with Infinite Rooms

题目:求从s开始的递增序列(每次加1),求出他们加和不小于D的那个最后的加数。分析:数学题,分治。s + s+1 + ... + n = n*(n+1)/2 - s*(s-1)/2 = (n+s)*(n-s+1)/2。             直接二分答案即可(二分范围0~10^8)。说明:(⊙_⊙)。#include #include using namespace st

2014-09-29 18:05:01 2356

原创 zoj 3017 - Extreme Gameplay

题目:最短路+DP 描述:用 M 个城堡,每个城堡有 N的连续的房间,每次            可以消耗一定的魔法在不同的城堡之间的同一编号的房间穿梭,             或者消耗一定的时间走向本城堡的下一个地点,求从 1号城堡            的 1号房间出发,到达任意第 N个房间的最小时间。     分析:典型的背包问题,每次以剩余的魔法值位容量背包(01比较

2014-09-28 23:52:04 596

原创 zoj 1880 - Tug of War

题目:二维01背包。分析:因为必须放在两个组中的一组,直接背包所有可到状态,            取出相差不超过 1的最接近 sum/2的值即可。 说明:430ms。。。好慢啊。。。 #include #include #include int f[ 52 ][ 22501 ];int h[ 101 ];int main(){ int n,sum;

2014-09-28 23:48:54 1011

原创 UVa 1330 - City Game

说明:注意数据读入格式。#include #include #include char Maps[1003][1003];int MaxH[1003][1003];int L[1003],R[1003];int MUQ[1003];int main(){ int t,m,n; while (~scanf("%d",&t)) while (t -

2014-09-27 21:36:38 838

原创 UVa 11934 - Magic Formula

题目:计算f(x)= ax^2 + bx + c 当 x取1,..,

2014-09-27 21:18:47 1115

原创 zoj 2189 - Exact Change Only

题目:给你几种不同面值的货币,

2014-09-27 20:58:18 1780

原创 UVa 442 - Matrix Chain Multiplication(zoj 1094)

题目:给你一些矩阵,以及他们饿运算

2014-09-27 20:43:54 789

原创 UVa 437 - The Tower of Babylon

题目:给你很多不同的矩形石头,yaogaiyizuita

2014-09-27 20:30:33 868

原创 zoj 2067 - White Rectangles

题目:一个由‘.’和‘#

2014-09-27 19:54:47 871

原创 zoj 1986 - Bridging Signals

题目:单调队列优化的最大上升子序列 O(NlogN)算法分析:说明:

2014-09-27 19:26:59 584

原创 zoj 1642 - Match for Bonus

题目:裸的最大gon分析:说明:

2014-09-27 19:23:19 596

原创 zoj 1163 - The Staircases

题目:整数不重复拆分。分析:dp,01背包。zhengshuchaifen

2014-09-27 19:20:29 789

原创 zoj 1027 - Human Gene Functions

题目:计算两个DNA串的,最大权值公共子序列。

2014-09-27 19:17:50 796

原创 zoj 2042 - Divisibility

题目:给你一串数字,不改变数字的顺序而在他们之间加入减号或者加号,问结能否整除m。分析:dp,背包类似物。容量为0 ~ m-1。            状态:f(i,j)为前i个数组合结果的余数为j的真值;            转移:f(i,j)= max(f(i-1,j-a[i]),f(i-1),j+a[i]){ 结果对应值在0 ~ m-1之间  };说明:(2011-9-19

2014-09-27 19:14:34 998

原创 zoj 2250 - Grandpa is Famous

题目:统计排名第二的人。分析:计数排序+统计。说明:大黄都说题目木有问题。他怎么会放在DP分类里啊。(2011-11-01 15:19)#include #include #include #include usingnamespace std;int V[ 10005 ];int C[ 10005 ];int cmp( constvoid* a, constvoi

2014-09-27 09:36:10 1073

原创 zoj 2501 - A Mini Locomotive

题目:有一串数,从里面取出m个不同的区间,每个区间长度不能超过M,使得所取所有数字和最大。分析:dp,单调队列,区间最大字段和。因为数据都是正的不需要单调队列维护(否则要使用)。            区间最大字段和,求出每个元素作为结束标志的前k项和;取结束位置作为dp状态;            然后,利用单调队列维护区间长度,O(1)时间查找满足长度的最小的前j项和,做差即可。

2014-09-27 09:35:35 835

原创 zoj 1883 - Tight Words

题目:如果一个单词的每个字母都不相差1,我们称为紧密的,给你字母集合{0~k},             问长度为n的单词是紧密的概率。分析:概率dp。以长度为阶段,结束位置的字符的概率为状态 dp。             状态:设f(i,j)为长度为i的单词,取自集合{ 0,..,k }的紧密概率;             转移:f(i,j)= (f(i-1,j-1)+ f(i

2014-09-27 09:00:55 1109 3

原创 zoj 2059 - The Twin Towers

题目:给你一些砖块,问你是否能罗列成2个高度相同的塔,每层一个石头。分析:dp,双塔问题。和LIS,背包等问题相同,前 i项的最优子问题。             状态:f(i,j)为前 i个材料,在两塔差的绝对值为j时的高塔(或者低塔)的高度;            决策:每次有 3种选择:放在高塔上,放在低塔上,或者不放;            T = O( sum( h )*

2014-09-26 14:55:24 1051

原创 zoj 1503 - One Person "The Price is Right"

题目:有一个数字让你猜,你有k次机会,并且有k个保险如果猜的低了会高度你低了,            高了会告诉你高了,并且失去一k保险(k=0时猜高了就会失败),现在问你能猜的数字范围。分析:dp,二维动态规划。按保险k和猜的机会n递增的方向dp。            状态:f(G,L)为有G次猜的机会,L个保险时确定的数字范围(1~N);            转移方程:F(

2014-09-26 00:42:05 1153

原创 zoj 2527 - Series

题目:计算最长的等差数列长度。分析:dp,LIS类似物,二分。先排序,然后枚举前面的所有点作为前一个元素求公差即可。            更新时,利用二分找到,距离当前位置最近的前第二元素,            如果不存在,则直接更新为 2即可。 说明:如果数据范围小的话,可在连续区间dp(O(L^2))。(2011-10-03 17:34)#include #inclu

2014-09-26 00:25:07 1177

原创 zoj 2414 - Index of Prime

题目:判断一个数能不能写成素数的和的形式,输出对应的素数大小最小组合。分析:dp,多重背包。看到整数拆分就是背包了。            由于时间和数据的限制,所以采用打表计算;            每次记录上次使用的 prime然后逆向求解即可。说明:注意,没有时输出 0,由于没写 WA了好几次。。。(2011-10-03 18:37)#include #include

2014-09-26 00:13:19 980

原创 zoj 2271 - Chance to Encounter a Girl

题目:平面图上有一个女孩,她初始在(n/2,,n/2),每次可以走到上下左右四个格子中的一个,            她每次随机的走的动,你从(-1,n/2)向右移动,问你们相遇的概率。分析:概率dp。事件为阶段,每个点由上一阶段周围的四个点来维护。            分成角、边、和中间三种计算概率(分别为1/5,1/3,1/4);            关于概率的求解,如果遇

2014-09-24 01:02:34 1017

原创 UVa 662 - Fast Food

题目:一条街道上有n家餐馆,现在想建立k个仓库,储存代价是每个餐馆到最近的仓库的距离和;            求最小的储存代价。分析:dp,中位数,动态规划。            状态:f(i,j)表示前j家餐馆建立i个仓库的最小储存代价;             状态转移:f(i,j)= min(f(i-1,k)+ cost(k+1,j)){ 其中 i-1        

2014-09-24 00:45:37 1777

原创 zoj 2811 - Playground

题目:有很多个半圆环,问能不能拼成闭合图形,这里可以任意角度端点拼接。分析:贪心。开始以为是搜索3^20觉得有点大,一看可以任意角度链接。            把range按递增序排序,每次检测前面的所有range的和是否大于当前的range;            如果前面的和大,则可以构成闭合图形;否则将它加入前面的集合,向下判断;            那么这种情况一定能取

2014-09-23 23:28:05 835

原创 zoj 1563 - Pearls

题目:有不同品质的珍珠,品量高的珍珠价钱高。买珍珠的价钱计算方式:(购买数量+10)×单价;            质量低的珍珠可以用质量高的珍珠替代,给出要买的珍珠类型和数量,求买完所有珍珠所要的最低价钱。分析:dp,贪心。每种珠宝 都是整体处理时才会有最小价格,即要么和比他贵的一起买,要么自己单独买。            按照价格递增的顺序dp,只有价格高的可以代替价格低的;

2014-09-23 22:50:19 1012

原创 UVa 1509 - Leet

题目:给你一个小写的串,其中mei

2014-09-22 23:48:34 1108

原创 zoj 3310 - Unrequited Love

题目:给你一个数字环,从里面去除不相邻的数字,使得数字和最大

2014-09-22 22:46:35 723

原创 hdu 2159 - Fate

题目:打怪升级,有忍耐值,每种guai限

2014-09-22 09:34:50 501

原创 hdu 2546 - 饭卡

题目:电子科大本部食堂的饭卡有一种很诡异的设计,即在购买之前判断余额。如果购买一个商品之前,           卡上的剩余金额大于或等于5元,就一定可以购买成功(即使购买后卡上余额为负),           否则无法购买(即使金额足够)。所以大家都希望尽量使卡上的余额最少。某天,食堂中有n种菜出售,           每种菜可购买一次。已知每种菜的价格以及卡上的余额,问最少可使卡

2014-09-22 08:47:10 1391

原创 hdu 1176 - 免费馅饼

题目:接馅饼,天上掉馅饼,活会落在0~10,11个位置上,单位时间可以移动到相邻的格子里;            问最大能接到多少。分析:dp,离散化。             阶段:时间(离散化的);            状态:某时间站在当前点,能得到的最大值;            决策:按照时间计算前一位置可到达当前位置的区间来更新当前点;说明:初始化 5位置0,其

2014-09-22 08:35:00 1679

原创 hdu 1421 - 搬寝室

题目:搬寝室,每次最多拿两个物品,代价是量物品重量之差的平方,求最小代价。分析:dp,贪心。如果取两个物品,重物相邻时,差的平方最小。             证明:设 a                        (d-a)^2 + (c-b)^2 > (d-c)^2 + (b-a)^2;                        (d-b)^2 + (c-a)^2 >

2014-09-22 08:28:03 835

原创 hdu 2870 - Largest Submatrix

题目:统计一个字母矩阵中最大的相同字母的面积,有些字母可以换成其他字母。分析:dp,单调队列。计算分三种分别换成a,b,c求出最大的子矩阵,求出最大即可。            然后就是单调队列优化的查询算法了,确定每个点右(左)边第一个比他小的点;            T(N)=O(N^2)。说明:(2011-09-19 08:15)。#include #include

2014-09-22 08:07:23 1121

原创 hdu 2830 - Matrix Swapping II

题目:求一个01矩阵中的最大有全是1的矩形面积,列可以任意互换。分析:dp。zoj2180类似题,计算前 K行的最大值时,先按高度排序即可。            这里利用单调队列优化了查询算法,即保存一个区间的最小高度维护即可;            最大的面积为max(最小高度*区间长度),T(N)= N^2 log(N)。说明:(2011-09-19 08:10)。#in

2014-09-22 07:54:57 828

SOFA: A Multi-Model Framework for Interactive Physical Simulation

HAL is a multi-disciplinary open access archive for the deposit and dissemination of scientific research documents, whether they are published or not. The documents may come from teaching and research institutions in France or abroad, or from public or private research centers.

2018-06-24

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除