自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Kemlkyo

不积跬步,无以至千里;不积小流,无以成江海

  • 博客(48)
  • 收藏
  • 关注

原创 codeforces514

codeforces 514 div 2

2015-02-16 21:24:48 667

原创 [cf398B]Painting The Wall

题意一个n*n的矩阵,部分格子已染色。ainta遵循如下规则行动。1. 若每列每行都至少有一个格子染色,停止。2. 随机选取一个格子,无论是否染色都将其涂色。3. 休息1分钟,回到第一步求ainta停下的期望时间。题解先把已经染色的行列去掉dp[i][j]表示还有i行j列不满足条件的期望时间

2015-02-10 18:19:38 795

原创 [BZOJ2151]种树

同1150每次取最大,然后把val[l]+val[r]-val[now]放入堆中/************************************************************** Problem: 2151 User: momoka Language: C++ Result: Accepted Time:404 ms

2015-02-10 16:42:49 668

原创 [BZOJ1150][CTSC2007]数据备份Backup

首先肯定要选择相邻的公司配对才会距离最小先把两两之间的距离加入小根堆中每次取出堆顶,加入答案,删掉左右线段,再扔进去len[l]+len[r]-len[now]这样如果这个新点被取到,说明取两边而不取中间做K次,贪心就是正确的了/************************************************************** Prob

2015-02-10 16:27:20 936

原创 [cf509B]Painting Pebbles

题意给出一种染色方案,使得任意两行中任意两种颜色的元素个数相差不超过1 题解根据抽屉原理,当k 1个物品放入k个抽屉时,必有两个物品放在同一个抽屉 故当序列最大值-最小值>k时,可以发现无法构造符合题意的方案,必有一种颜色在一个序列中多用了2次及以上 比如1 和 4, 2种颜色, 染色方案只能是 1 1 2 1 1 或 1 1 2 1 2对于有解的情况,只要按顺序循环每种颜色

2015-02-09 16:55:19 542

原创 [cf509C]Sums of Digits

题意给定n个bi,表示ai的数位之和,ai严格递增 ,求使an最小的数列ai 题解贪心,第一个数直接构造,从低位到高位,不足9直接放,大于9就放9,跳下一位,这个步骤写成过程get(x),方便调用 从第2个数开始,记delta=b[i]-b[i-1] 1.如果delta>0,就在上一个数的基础上get(delta),从低位到高位,如果当前这位dig[j]不足9就放上9-dit[j],跳下

2015-02-09 15:57:49 229

原创 可持久化线段树(poj2104/hdu4866)

最近网络太卡不得不从Logdown转回来,为了方便搬迁以下还是用markdown写吧= =[这里有个博客说的很详细](http://blog.csdn.net/metalseed/article/details/8045038) 我来补充一下自己的想法 大概就是 每次更新一条链都新开一路的节点 和历史版本共用相同节点 用root[]数组保存每颗线段树根

2015-01-20 14:45:03 588

原创 【网络流】最小路径覆盖

最小边覆盖=最大独立集=n-最大匹配这个是在原图是二分图上进行的最小路径覆盖和最小边覆盖不同,不要求给的图是二分图,而是要求是PXP的有向图,不能有环,然后根据原图构造二分图,构造方法是将点一分为二,如,i分为i1和i2然后如果i和j有边,那么就在i1和j2之间连一条边。由此构成二分图然后最小路径覆盖是n-m,n为原图的点的个数,m为新造二分图的最大匹配。证明也是特别简单的,根据定

2014-04-20 14:43:25 684

原创 【网络流】太空飞行计划

最大利润 = 总收入 — 最大权闭合图权值 即最大利润 = 总收入 — 最大流

2014-04-20 12:48:21 617

原创 【网络流】网络流24题

01 飞行员配对   二分图匹配    <a href=http://blog.csdn.net/kemlkyo/article/details/24178925This is a link

2014-04-20 12:15:26 606

原创 【网络流/二分图匹配】飞行员配对

从S向每个正驾驶员连一条边,从可以peid

2014-04-20 12:12:39 769

原创 【GCD】Stein算法(二进制算法)

算法效率 只有移位和加减操作,抛弃了欧几里得算法的取模,大数据中效率很高(听说)算法思想为了说明Stein算法的正确性,首先必须注意到以下结论:gcd(a,a)=a,也就是一个数和其自身的公约数仍是其自身。gcd(ka,kb)=k gcd(a,b),也就是最大公约数运算和倍乘运算可以交换。特殊地,当k=2时,说明两个偶数的最大公约数必然能被2整除。

2014-03-31 23:39:49 1894

原创 【二分图匹配】最大匹配-匈牙利算法BFS && DFS写法

搞了两节课终于搞懂了ORZ这个讲解得很详细http://blog.csdn.net/pi9nc/article/details/11848327  注意:每次找增广路之前都要初始化           BFS写法要多加一个Prev数组保存这个点从哪个点来(同侧)          如果给出的两个点集各自序号都是1~n的: 对于DFS写法 因为其隐形地调用了一个栈 只要开一个Ma

2014-03-27 21:26:40 2484

原创 【Spfa】noip2009 最优贸易

最优贸易(trade.pas/c/cpp)【问题描述】 C国有n 个大城市和 m 条道路,每条道路连接这n 个城市中的某两个城市。任意两个城市之间最多只有一条道路直接相连。这m 条道路中有一部分为单向通行的道路,一部分为双向通行的道路,双向通行的道路在统计条数时也计为1 条。   C 国幅员辽阔,各地的资源分布情况各不相同,这就导致了同一种商品在不同城市的价格不一定相同。但是,

2014-03-26 16:57:34 739

原创 【贪心】【JSOI2010】缓存交换

缓存交换【问题描述 】在计算机中,CPU只能和高速缓存Cache直接交换数据。当所需的内存单元不在Cache中时,则需要从主存里把数据调入Cache。此时,如果Cache容量已满,则必须先从中删除一个。例如,当前Cache容量为3,且已经有编号为10和20的主存单元。此时,CPU访问编号为10的主存单元,Cache命中。接着,CPU访问编号为21的主存单元,那么只需将该主存单元

2014-03-22 17:48:22 2350

原创 C++ pari类型与优先队列实现堆

Pair类型pair是一种模板类型,其中包含两个数据值,两个数据的类型可以不同,基本的定义如下:pair a;表示a中有两个类型,第一个元素是int型的,第二个元素是string类型的,如果创建pair的时候没有对其进行初始化,则调用默认构造函数对其初始化。pair a("James", "Joy");也可以像上面一样在定义的时候直接对其初始化。由于

2014-03-22 15:44:23 4609

原创 【最短路】hdu2544 dijskstra+堆优化

#include#include#includeusing namespace std;#define INF 9999999#define maxn 101int i,j,n,m,map[maxn][maxn],mark[maxn],a,b,c,dis[maxn];typedef pair ele;void clear(){ memset(mark,0,sizeo

2014-03-22 15:42:57 964

原创 【LCA】vijos1427机密信息

描述Lorabit有个很奇怪的习惯,他把他所有的机密信息都存放在一个叫机密盘的磁盘分区里,然而这个机密盘中却没有一个文件,那他是怎么存放信息呢?聪明的你一定想到了,Lorabit的信息都是以文件夹名称的形式保存的。Lorabit给机密盘中的每一个文件夹都编了号,而Lorabit的机密信息是由S文件夹转到T文件夹的过程中必须经过的文件夹名称组合而成的(包括S和T),由于Lorabit的磁盘很

2014-03-20 12:38:09 1283 2

原创 【LCA】求最近公共祖先

算法一:在线算法 倍增POJ1330 模板题#include #include #include #include #include #include #include #include #include #include #include #include using namespace std;#define maxn 10010int point[max

2014-03-19 21:05:00 582

原创 【贪心】codeforces30D King‘s problem

直接上中文题面King's Problem?时间限制:3.0s  内存限制:256.0MB   Special Judge问题描述  每一个真正的国王在他的一生中,一定会征服世界,取得 codeforces的世界冠军,在射击场赢得粉色的熊猫(= =),并游历整个王国。  国王 Copa 已经完成了前三件事。现在他只需要游历完整个王国了。他的王国在一个无限大的笛卡尔坐标系

2014-03-17 20:30:26 698

原创 【splay】BZOJ1208宠物收养所

1208: [HNOI2004]宠物收养所Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 3620  Solved: 1364[Submit][Status]Description最近,阿Q开了一间宠物收养所。收养所提供两种服务:收养被主人遗弃的宠物和让新的主人领养这些宠物。每个领养者都希望领养到自己满意的宠物,阿Q根据领养者

2014-03-17 20:18:37 657

原创 【贪心】codeforces45E Director

E. Directortime limit per test2 secondsmemory limit per test256 megabytesinputstandard inputoutputstandard outputVasya is a born Berland film director, he is cu

2014-03-16 23:25:37 787

原创 【背包】POJ3260

The Fewest CoinsTime Limit: 2000MS Memory Limit: 65536KTotal Submissions: 4464 Accepted: 1334DescriptionFarmer John has gone to town to buy some farm supplies. Be

2014-03-16 16:58:07 607

原创 2014.3树形动规练习2

1、  树的重量源程序名            weight.???(pas, c, cpp)可执行文件名        weight.exe输入文件名          weight.in输出文件名          weight.out【问题描述】    树可以用来表示物种之间的进化关系。一棵“进化树”是一个带边权的树,其叶节点表

2014-03-13 21:08:38 691

原创 【堆排】合并果子

#include#define maxlongint 2147483647long n,a[10001],ans,i,k;void Adjustheap(long s){ long j=0,tmp; while (j!=maxlongint){ tmp=a[s]; j=maxlongint; if (s*2<=n && a[s*2]<tmp)

2014-03-12 17:00:31 986

原创 【图论】最短路

Floyed算法编辑目录1定义2思想3实现4总评5图文1定义编辑Floyed-Warshall 算法用来找出每对点之间的最短距离。它需要用邻接矩阵来储存边,这个算法通过考虑最佳子路径来得到最佳路径。 注意单独一条边的路径也不一定是最

2014-03-09 22:56:05 831 1

原创 机智的交换函数

ORZ感觉好机智啊void swap1(int a,int b){ a=a^b; b=a^b; a=a^b; }void swap2(int a,int b){ a=a+b; b=a-b; a=a-b; }

2014-03-01 12:06:47 562

原创 2014.2树形动规练习1

1、        加分二叉树(binary.pas/c/cpp)【问题描述】    设一个n个节点的二叉树tree的中序遍历为(l,2,3,…,n),其中数字1,2,3,…,n为节点编号。每个节点都有一个分数(均为正整数),记第i个节点的分数为di,tree及它的每个子树都有一个加分,任一棵子树subtree(也包含tree本身)的加分计算方法如下:   subtree的左子树的

2014-02-22 11:26:43 2891

原创 资源类动规练习

总结:资源类动规一般转移方程为f[i][j]=max{f[i-1][k]+s[k+1][j] 即考虑第i个阶段和第i-1个阶段的关系          最外层循环起始位置一般从2开始,避免出现把K个资源分配给0个对象的错误           对于f[1][j]要手动赋初值          注意循环的上下界,初始化等1、机器分配(machine.pasmachine.in

2014-02-13 21:33:16 1303

原创 【资源类动规】复制书稿

一道看起来很水的题,但是我调了好久  复制书稿(book.pas)【问题描述】    现在要把m本有顺序的书分给k给人复制(抄写),每一个人的抄写速度都一样,一本书不允许给两个(或以上)的人抄写,分给每一个人的书,必须是连续的,比如不能把第一、第三、第四本书给同一个人抄写。    现在请你设计一种方案,使得复制时间最短。复制时间为抄写页数最多的人用去的时间。【输入】  

2014-02-09 17:23:58 1732

原创 碎碎念

有没有人给个评论啊好寂寞【摔

2014-02-08 20:07:16 746 5

原创 区间动规

能量项链(energy.pas/c/cpp) 【问题描述】在Mars星球上,每个Mars人都随身佩带着一串能量项链。在项链上有N颗能量珠。能量珠是一颗有头标记与尾标记的珠子,这些标记对应着某个正整数。并且,对于相邻的两颗珠子,前一颗珠子的尾标记一定等于后一颗珠子的头标记。因为只有这样,通过吸盘(吸盘是Mars人吸收能量的一种器官)的作用,这两颗珠子才能聚合成一颗珠子,同时释放出可以

2014-02-08 01:14:50 634

原创 2014-02 记忆化搜索练习

总结:注意初始化标记、边界条件1、数的计数(count.pas)[问题描述]    我们要求找出具有下列性质数的个数(包含输入的自然数n):    先输入一个自然数n(n≤1000),然后对此自然数按照如下方法进行处理    l·不作任何处理:    z·茬它的左边加上一个自然数,但该自然数不能超过原数的一半;    3·加上数后,继续按此规则进行处理,直到不能再而自然

2014-02-08 01:12:49 932

原创 【POJ1014】【TYVJ1194】划分大理石

DividingTime Limit: 1000MS Memory Limit: 10000KTotal Submissions: 55117 Accepted: 14112DescriptionMarsha and Bill own a collection of marbles. They want to split

2014-01-25 11:59:27 975

原创 筛法求素数

int n,m;long ans;long a[20];long prime[10001]; //bool notprime[10001]={0};int prime_num=0;long maxp=10000;void PR(){ for (long i=2;i<=maxp;i++) { if (!notprime[i]) prime

2014-01-23 20:31:47 509

原创 背包练习

1、采药(medic.pas/c/cpp)【问题描述】辰辰是个天资聪颖的孩子,他的梦想是成为世界上最伟大的医师。为此,他想拜附近最有威望的医师为师。医师为了判断他的资质,给他出了一个难题。医师把他带到一个到处都是草药的山洞里对他说:“孩子,这个山洞里有一些不同的草药,采每一株都需要一些时间,每一株也有它自身的价值。我会给你一段时间,在这段时间里,你可以采到一些草药。如果你是一个聪明的孩子,

2014-01-23 10:55:04 1714

原创 2014-1-22

考试时间:8:30-12:00,时限:1秒,内存:256M试题一、达尔文芯片问题(本题满分100分)源程序:cores.c/cores.cpp/cores.pas/cores.pp «问题描述:人的大脑里发生的一切是神奇的,甚至是不可理解的,正是这种神奇使得人具有自我意识。如果用普通硅片、电路、传感器制成的机器人也能进化,从而能有意识的行动,那么是否有一天,机器人也会变得和人一

2014-01-22 17:16:46 945

原创 【线性DP】基础练习

1、数字金字塔考虑在下面被显示的数字金字塔。写一个程序来计算从最高点开始在底部任意处结束的路径经过数字的和的最大。每一步可以走到左下方的点也可以到达右下方的点。73 88 1 02 7 4 44 5 2 6 5在上面的样例中,从7 到 3 到 8 到 7 到 5 的路径产生了最大和:30PROGRAMNAME: numtriINPUTFO

2014-01-21 19:46:24 1190

原创 【深搜优化】邮票面值设计

【题目描述】给定一个信封,最多只允许粘贴N张邮票,计算在给定K(n) 种邮票的情况下(假定所有的邮票数量都足够),如何设计邮票的面值,能得到最大max,使得1-max之间的每一个邮资值都能得到。      例如,N=3,K=2,如果面值分别为1分、4分,则在l分-6分之间的每一个邮资值都能得到(当然还有8分、9分和12分):如果面值分别为1分、3分,则在1分-7分之间的每一个邮资值都能

2014-01-20 20:29:58 827

原创 【深搜优化】关路灯

【问题描述】    某一村庄在一条路线上安装了n盏路灯,每盏灯的功率有大有小(即同一段时间内消耗的电量有多有少)。老张就住在这条路中间某一路灯旁,他有一项工作就是每天早上天亮时一盏一盏地关掉这些路灯。    为了给村里节省电费,老张记录下了每盏路灯的位置和功率,他每次关灯时也都是尽快地去关,但是老张不知道怎样去关灯才能够最节省电。他每天都是在天亮时首先关掉自己所处位置的路灯,然后可以向左也

2014-01-20 20:17:58 784

空空如也

空空如也

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

TA关注的人

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