自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

灬豪侠彡

CQYZ_Steve 竞赛+生活 CPP Blog

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

原创 POJ - 3258/USACO - Dec06 Silver/NOIP 2015 - 提高组 River Hopscotch 贪心+二分搜索

【问题描述】 每年奶牛们举行一场奇特的活动。他们从左岸出发,一个个小心地跳过河上的石头,最后跳到右岸。左右岸上各有一块石头,分别是起点和终点,而它们之间有N块石头在河上,它们与两岸的两块石头处在同一条直线上。左右岸相距L个单位长度,而每块石头到左岸都有一个距离Di(0 < Di < L)。Farmer John很自豪地看着他的奶牛们一个个跳过河,但是渐渐地他厌倦了。他希望移走河上的一些石头,使得剩

2016-07-31 09:36:13 333

原创 POJ - 2456/USACO - Feb05 Gold Aggressive cows 二分搜索+区间选点+贪心

【问题描述】 John拥有一个的属于自己的农场。最近,为了提高农场的运营状况,他建了一个有N 个槽的畜棚。这些槽位于一条直线上,其坐标分别为x1,x2,…xN(0≤xi≤1,000,000,000)。John新购买了一批奶牛,数量为C头。这些奶牛不喜欢槽式生活,并且经常进行一些激烈的打斗。为了减少奶牛们相互伤害而造成的损失,John必须按一定的策略来来安排这些奶牛进入槽。John策略就是,使距离最

2016-07-30 11:09:33 477

原创 POJ - 3276/USACO - Mar07 Gold Face The Right Way 尺取法+反转

【题意】N头牛排成一列1<=N<=5000。每头牛或者向前(表示为F)或者向后(表示为B)。为了让所有牛都面向前方,农夫每次可以将K头连续的牛转向1<=K<=N,求操作的最少次数M和对应的最小K。思路:枚举所有的K,每个K都从最左端考虑每头牛的情况,若朝向后方则需要翻转,前方则不需要。但是该法的时间复杂度为O(N^3),因此需要优化。优化的方法是:用f[i]记录[i,i+K-1]是否进行了翻转,是则为1,

2016-07-28 19:04:28 352

原创 POJ - 3320 Jessica's Reading Problem 尺取法+映射 重庆一中高2018级竞赛班第三次测试 2016.7.24 Problem 4

【问题描述】 为准备考试,Jessica开始阅读一本很厚的课本。要想通过考试,必须把课本中所有知识点都掌握。这本书总共有P页,第i页恰好有一个知识点a[i](每个知识点都有一个整数编号)。全书中同一个知识点可能会被多次提到,所以她希望通过阅读其中连续的一些页把所有的知识点都覆盖到。给定每页写到的知识点,请求出要阅读的最少页数。【输入格式】 第一行一个整数P,表示书本的总页数。接下来的一行,包含P

2016-07-28 09:59:11 240

原创 NOIP 2011 - 普及组 瑞士轮 归并排序 重庆一中高2018级竞赛班第四次测试 2016.7.25 Problem 4

【背景】 在双人对决的竞技性比赛,如乒乓球、羽毛球、国际象棋中,最常见的赛制是淘汰赛和循环赛。前者的特点是比赛场数少,每场都紧张刺激,但偶然性较高。后者的特点是较为公平,偶然性较低,但比赛过程往往十分冗长。 本题中介绍的瑞士轮赛制,因最早使用于 1895 年在瑞士举办的国际象棋比赛而得名。它可以看作是淘汰赛与循环赛的折衷,既保证了比赛的稳定性,又能使赛程不至于过长。【问题描述】 2*N 名编号

2016-07-28 09:37:33 495

原创 POJ - 3622/USACO - Dec07 Gold Gourmet Grazers 挑剔的美食家 重庆一中高2018级竞赛班第五次测试 2016.7.26 Problem 4

【问题描述】 与很多奶牛一样,FJ那群养尊处优的奶牛们对食物越来越挑剔,随便拿堆草就能打发她们午饭的日子自然是一去不返了。现在FJ不得不去牧草专供商那里购买大量美味多汁的牧草,来满足他那 N 头挑剔的奶牛。 所有奶牛都对FJ提出了她对牧草的要求:第i头奶牛要求她的食物每份的价钱不低于A_i,并且鲜嫩程度不能低于B_i。商店里供应M种不同的牧草,第i种牧草的定价为C_i,鲜嫩程度为D_i 。 为了显

2016-07-27 14:05:25 981

原创 UVa - 1615 Highway 高速公路 贪心+区间选点 重庆一中高2018级竞赛班第五次测试 2016.7.26 Problem 1

【问题描述】 Bob是一名优秀的工程设计师,他正在设计一条穿越的农村地区的高速公路。为了方便一些村庄的人安全而快捷穿越高速路,需要设计跨越高速公路的人行天桥。当然为了节约成本,Bob须尽量减少天桥的数量。 在Bob的设计图纸上,高速公路是一条长为L的线段,它的左端点是平面坐标系的原点,右端点是x轴正方向的某个点。所有村庄在坐标系中标记成点。 现在请你帮助Bob确定需要修建人行天桥的最少数量

2016-07-26 20:49:47 590

原创 NOIP 2008 - 普及组 排座椅 贪心 重庆一中高2018级竞赛班第五次测试 2016.7.26 Problem 2

【问题描述】 上课的时候总有一些同学和前后左右的人交头接耳,这是令小学班主任十分头疼的一件事情。不过,班主任小雪发现了一些有趣的现象,当同学们的座次确定下来之后,只有有限的D对同学上课时会交头接耳。同学们在教室中坐成了M行N列,坐在第i行第j列的同学的位置是(i,j),为了方便同学们进出,在教室中设置了K条横向的通道,L条纵向的通道。于是,聪明的小雪想到了一个办法,或许可以减少上课时学生交头接耳的

2016-07-26 20:30:25 491

原创 POJ - 3045/USACO - Nov05 Silver Cow Acrobats 牛的杂技 重庆一中高2018级竞赛班第四次测试 2016.7.25 Problem 3

【问题描述】 FJ养了N头牛,他们按照1到N依次编上了号。FJ所不知道的是,他的所有牛的梦想是从农场逃走,去参加马戏团的演出。可奶牛门很快发现他们那么笨拙的蹄子根本无法在钢丝或晃动的秋千上站稳(他们还尝试过把自己装在大炮里发射出去,但可想而知,结果是悲惨的)。最终,他们决定练习一种最简单的杂技:把所有牛都摞在一起,比如说,第一头牛站在第二头牛的身上,同时第二头牛有站在第三头牛的身上……,最底下的是

2016-07-26 10:21:27 458

原创 旅行 贪心 重庆一中高2018级竞赛班第四次测试 2016.7.25 Problem 2

【问题描述】 Mr_H旗下的 n 个OIer坐船外出旅行! 但是他们只有一艘船,虽然船能装下全部的Oier,但太拥挤将会影响众OIer的心情,所以Mr_H决定选择一部分Oier去。我们假设,每个人单独坐船的快乐程度是Ci,而船上每多一个人,他的快乐程度会减去Di。 现在你的任务是帮助Mr_H计算,选择那些人,才能使船上所有人的快乐程度之和达到最大。【输入格式】 第1行是一个整数n,表示OIe

2016-07-26 09:16:55 412

原创 BashuOJ - 4479 足球联赛 暴力 水题 重庆一中高2018级竞赛班第四次测试 2016.7.25 Problem 1

【问题描述】 巴蜀中学新一季的足球联赛开幕了。足球联赛有 n只球队参赛,每赛季,每只球队要与其他球队各赛两场,主客各一场,赢一场得 3 分,输一场不得分,平局两只队伍各得一分。英勇无畏的小鸿是机房的主力前锋,她总能在关键时刻踢出一些匪夷所思的妙球。但是很可惜,她过早的燃烧完了她的职业生涯,不过作为一个能够 Burning 的 girl,她的能力不止如此,她还能预测这个赛季所有球队的比赛结果。 虽然

2016-07-26 08:55:14 1756

原创 NOIP 2010 - 普及组 导弹拦截 贪心 重庆一中高2018级竞赛班第三次测试 2016.7.24 Problem 3

【问题描述】 经过 11 年的韬光养晦,某国研发出了一种新的导弹拦截系统,凡是与它的距离不超过其工作半径的导弹都能够被它成功拦截。当工作半径为 0 时,则能够拦截与它位置恰好相同的导弹。但该导弹拦截系统也存在这样的缺陷:每套系统每天只能设定一次工作半径。而当天的使用代价,就是所有系统工作半径的平方和。 某天,雷达捕捉到敌国的导弹来袭。由于该系统尚处于试验阶段,所以只有两套系统投入工作。如果现在的

2016-07-25 11:50:33 804

原创 POJ - 3069 Saruman's Army 萨鲁曼的大军 贪心 重庆一中高2018级竞赛班第三次测试 2016.7.24 Problem 2

【问题描述】 萨鲁曼的大军正行进在一条笔直的道路上,由于是在夜晚行军,路上的石头严重地影响了行军速度。于是萨鲁曼决定预先在道路上安装一些路灯,以便士兵们能清楚地看到所有石头。 萨鲁曼给出n块石头的位置Xi,现在需要在这些位置中选择若干个位置设置路灯。每盏路灯的照亮范围为R,即若你在Xi处设置了一盏路灯,则在[Xi-R,Xi+R]的范围内都会被照亮。 现在请你计算最少设置多少盏路灯,就能把所有石

2016-07-25 10:52:50 412

原创 UVa - 815 Flooded! 洪水 二分猜答案+排序 重庆一中高2018级竞赛班第三次测试 2016.7.24 Problem 1

【问题描述】 有一个n行m列的网格,每个格子是边长为10米的正方形,网格四周是无限高的墙壁,第i行第j列每个格子的海拔高度为h[i][j]。现在网格中有T立方米的水,请你计算网格中的水平面的海拔高度,以及有水格子数目。注意,在网格中,所有有水格子的水平面的海拔高度相同,所以有水格子的数量为海拔高度严格小于水平面高度的格子数目。【输入格式】 第一行整数n和m,表示网格有n行m列。 接下来是

2016-07-25 09:35:05 538

原创 HDU - 4544 湫湫系列故事——消灭兔子 贪心+优先队列

【问题描述】 湫湫减肥,越减越肥! 最近,减肥失败的湫湫为发泄心中郁闷,在玩一个消灭免子的游戏。 游戏规则很简单,用箭杀死免子即可。 箭是一种消耗品,已知有M种不同类型的箭可以选择,并且每种箭都会对兔子造成伤害,对应的伤害值分别为Di(1 <= i <= M),每种箭需要一定的QQ币购买。 假设每种箭只能使用一次,每只免子也只能被射一次,请计算要消灭地图上的所有兔子最少需要的QQ币。【输入

2016-07-21 19:09:32 341

原创 【训练题】区域个数 坐标离散化+BFS算法

【问题描述】 w*h的格子画了n条或垂直或水平宽度为1的直线,求出这些格子被划分成了多少个4连块(上、下、左、右连通)。 【输入格式】 第一行包含两个整数:w和h,表示矩阵的列数和行数(行列编号都从1开始)。 第二行包含一个整数n,表示有n条直线。 接下来的n行,每行包含四个整数:x1,y1,x2,y2,表示一条直线的列号和行号。【输出格式】 一个整数,表示区域数量。【输入样例】10 1

2016-07-20 19:06:21 1386 1

原创 POJ - 1723 Soldiers 士兵站队 排序+中位数

【问题描述】 在一个划分成网格的操场上,n个士兵散乱地站在网格点上。网格点由整数最表(x,y)表示。士兵可以沿着网格边上、下、左、右移动一步,但在同一时刻一个网格上只能有一名士兵。按照军官的命令,士兵们要整齐地列成一个水平队列,即排列成(x,y),(x+1,y),…,(x+n-1,y)。如何选择x,y的值,才能使士兵们以最少的总移动步数排成一列。 请计算使所有士兵排成一行需要的最少移动步数。【输

2016-07-19 18:21:42 2052 2

原创 【总结】信息学竞赛第一年学习的所有STL函数

部分引用自维基百科 - 标准模板库容器序列容器 - 有序集 vector 动态数组关联容器 - 无序集 set 不重复元素的集合。 multiset 跟 set 具有相同功能,但允许重复的元素。 map 关联数组,每个元素含有两个数据项,map 将一个数据项映射到另一个数据项中。容器适配器 queue 队列 priority_queue 优先队列

2016-07-18 10:49:51 1597

原创 USACO - Nov09 Job Hunt 找工作 SPFA算法+点权转边权

【问题描述】 奶牛们没钱了,正在找工作。FJ知道后,希望奶牛们四处转转,碰碰运气。而且他还加了一条要求:一头奶牛在一个城市最多只能赚D(0 < D <= 1000)美圆,然后他必须到另一个城市工作。当然,他可以在别处工作一阵后又回来再多赚D美元。而且这样往往返返的次数没有限制。 城市间P(1<=P<=150)条单向道路连接,共有N(2<=N<=300)座城市(编号为1..N)。贝西当前在城市S。

2016-07-17 16:14:06 509

原创 USACO - 3.2.6 Sweet Butter 香甜的黄油 Dijkstra(迪杰斯特拉算法)+枚举

【问题描述】 农夫John发现做出全威斯康辛州最甜的黄油的方法:糖。把糖放在一片牧场上,他知道N(1<=N<=500)只奶牛会过来舔它,这样就能做出能卖好价钱的超甜黄油。当然,他用额外赚来的钱给奶牛买奢侈品。 农夫John很狡猾。他知道他可以训练这些奶牛,让它们在听到铃声时去一个特定的牧场。他打算将糖放在那里然后下午发出铃声,以至他可以在晚上挤奶。 农夫John知道每只奶牛都在各自喜欢的牧场呆

2016-07-17 15:49:18 699

原创 【训练题】单源最优路径 SPFA(队列优化)算法

【问题描述】 给出N个顶点,M条无向带权边的连通图,和一个出发点(源点)S:请编程计算: 问1、S到其他点的所有路径中,需要经过的最小边最大的那条路径(最小边最大); 问2、S到其他点的所有路径中,需要经过的最大边最小的那条路径(最大边最小);【输入格式】 第一行:N(N<=50,000),M(M<=100,000),为图的顶点数目和边的数目。 接下来m行,每行三个整数x,y,t,为一条边

2016-07-16 16:23:26 546

原创 USACO - 2.4.2 穿越栅栏(改编) 重庆一中高2018级竞赛班第二次测试 2016.7.13 Problem 3

【问题描述】 FJ搭建了一个巨大的用栅栏围成的迷宫。幸运的是,他在迷宫的边界上留出了两段栅栏作为迷宫的出口,并且从迷宫中的任意一点都能找到一条走出迷宫的路。给定迷宫的行和列数和这个迷宫,然后计算从迷宫中最“糟糕”的那一个点走出迷宫所需的最少步数。【输入格式】 第一行为正数m和n,表示迷宫的行数和列数,用空格隔开。迷宫用一个由数字组成的矩阵表示,一个数字表示迷宫的一个格子。每一个格子的数字告诉我们

2016-07-15 11:24:59 323

原创 NOIP 2013 - Day 1 货车运输 重庆一中高2018级竞赛班第二次测试 2016.7.13 Problem 4

【问题描述】 A 国有 n 座城市,编号从 1 到 n,城市之间有 m 条双向道路。每一条道路对车辆都有重量限制,简称限重。现在有 q 辆货车在运输货物,司机们想知道每辆车在不超过车辆限重的情况下,最多能运多重的货物。【输入格式】 第一行有两个用一个空格隔开的整数 n,m,表示 A 国有 n 座城市和 m 条道路。 接下来 m 行每行 3 个整数 x、y、z,每两个整数之间用一个空格隔开,表示

2016-07-14 14:34:33 647

原创 RQNOJ - 190 拦截匪徒 重庆一中高2018级竞赛班第二次测试 2016.7.13 Problem 2

【题目描述】 某市的地图是一个由n个点组成的无向图,每个点代表一个区。现在第p区发生了抢劫案,而警察为了借助劫匪需埋伏在一个劫匪必经的区域。由于不知道劫匪会向哪个区域逃窜,所以市长要求你计算出对于任意一个劫匪可能逃向的区j,找出一个可以借助劫匪的区k(k<>p,k<>j),即劫匪从p区逃向j区,必经过k区。由于地区j可能为匪徒的老巢所在,所以警察希望能在路上拦住匪徒,而不是在j区抓捕。【输入格式】

2016-07-13 21:20:15 605

原创 USACO - Dec08 Bad Grass 重庆一中高2018级竞赛班第二次测试 2016.7.13 Problem 1

【问题描述】 贝茜像其它奶牛一样正在吃草,她正在思考她所在的地方。她注意到她只得到了一个平于海平面的广泛大片牧场。只有海拔1米或者更高更硬的草不那么美味。草随着海拔的增加越发难吃。 继续咀嚼,她意识到,这没有食欲的食物长成两侧的丘陵,形成了青翠美味丰富草地海洋中的一系列劣质草小岛 。贝茜穿上她的实验服,决心测定她的牧场有多少劣草小岛。她画出一张画有被分成R (1 < R <= 1,000) 行、C

2016-07-13 20:59:44 686

原创 BZOJ - 1977 [BeiJing2010组队]次小生成树 Tree Kruskal演算法+最近公共祖先

【Description】 小C最近学了很多最小生成树的算法,Prim算法、Kruskal算法、消圈算法 等等。正当小C洋洋得意之时,小P又来泼小C冷水了。小P说,让小C求出一 个无向图的次小生成树,而且这个次小生成树还得是严格次小的,也就是说:如果最小生成树选择的边集是 EM,严格次小生成树选择的边集是 ES,那么需要满足:(value(e)表示边e的权值) 这下小C 蒙了,他找到了你,希

2016-07-12 14:45:21 403

原创 USACO - Oct08 Gold Watering Hole 挖井 Kruskal演算法+点权转边权

【问题描述】 FJ决定给他分别用1到N编号的牧草浇水,他可以直接在一颗牧草旁边直接挖一口井来获得水,也可以用管子从任意有水的牧草那里来获得水。在第i颗牧草旁边挖一口井的代价为Wi(),用管子连接第i与第j颗牧草的代价为Pij( Pij=Pji; Pii=0)。请求出FJ浇灌这些牧草花费的最小代价。【输入格式】 第一行,一个整数N。第二行到第N+1行,行i+1表示Wi。 第N+2行到第

2016-07-12 10:53:12 914

原创 UVa - 10099 The Tourist Guide 并查集+贪心

【问题描述】 Mr.he有一家旅游公司。他得当前任务是带一些游客去一个遥远的城市。一些城市之间有双向道路。每对相邻城市之间都有一条高速公路,每条路线规定了自己的最大乘客数目。Mr.he有一份包含城市间道路的状况和公交车最大载重容量的地图。(最多有50000个城市,有100000条道路,道路的容量位于区间[1,100000]),并保证任意两点之间能相互到达。往往无法一次性地将所有乘客带往目的地。例如

2016-07-11 14:49:39 312

原创 POJ - 1088 滑雪 DP+记忆化搜索

【Description】 Michael喜欢滑雪百这并不奇怪, 因为滑雪的确很刺激。可是为了获得速度,滑的区域必须向下倾斜,而且当你滑到坡底,你不得不再次走上坡或者等待升降机来载你。Michael想知道载一个区域中最长底滑坡。区域由一个二维数组给出。数组的每个数字代表点的高度。下面是一个例子 1 2 3 4 5 16 17 18 19 6 15 24 25 20 7 14 23

2016-07-10 17:01:26 319

原创 UVa - 11396 Claw Decomposition 二分图的判定

【问题描述】 给出n(n≤300)个节点的简单无向图(无自环无重边),每个点的度为3。现在你需要判断能否将它分解成若干个爪(如图所示)。在你的方案中,每条边必须恰好属于一个爪,但同一个节点可以出现在多个爪里。    【输入格式】 多组输入数据:每组数据第一行为这个图的点数n,第二行开始每行2个整数a, b(1 <= a, b <= n)为该图的边,以”0 0”结束。【输出格式】 对于每组数

2016-07-10 15:55:16 280

原创 【训练题】强连通分量缩点

【问题描述】 有 N 个人和每个人所认识人的列表,注意:即使B在A的列表中,A也不一定在B的列表中。现在小明有一个重要消息要通知这N个人,注意:如果A认识B,则当A得到这个消息,他就会立即通知B。现在请你完成下面两个任务:任务1:请你计算要让N个人都得到消息,那么小明必须把这个消息直接通知的人的最少数目。任务2:如果小明想要只告诉这N个人中的任何一个人,其他所有人都能得到消息,那么可能需要在某些人

2016-07-10 15:46:54 428

原创 POJ - 2230 Watchcow

【问题描述】 FJ有 N 个农场,他们由 M 条双向道路连接。贝茜从农场出发巡逻。每条路必须由两个方向各走一遍,最后回到农场1。题目保证有这样的路径存在。 请输出这样的路径。【输入格式】 第一行输入N和M,之后M行输入一条路径的两个端点。【输出格式】 输出经过的农场,一行一个(字典序最小的)。【输入样例】4 51 21 42 32 43 4【输出样例】1214232

2016-07-09 16:55:43 313

原创 【训练题】二分图判定

【问题描述】 对于无向图 G=(V,E),如果可以把结点集分成不相交的部分,即 X和 Y=V-X,使得每条边的其中一个端点在 X 中,另一个在 Y 中,则称 G 为二分图(bipartite graph)。二分图的另一种等价说法是,可以把每个结点着以黑色和白色之一,使得每条边的两个端点颜色不同,所以黑白染色法这就是判定二分图的基本算法。不难发现,非连通图是二分图当且仅当每个连通分量都是二分图。比如

2016-07-09 15:09:52 388

原创 【训练题】拓扑排序

【问题描述】 有N个士兵,编号依次为1,2,3,…,N, 队列训练时,指挥官要把一些士兵从高到矮依次排成一行。但现在指挥官不能直接获得每个人的身高信息,只能获得“p1比p2高”这样的比较结果:记为p1>p2。例如1>2,2>4,3>4。士兵的身高关系如图所示:    【输入格式】 第一行:包含两个整数N、M,第二至第M+1行:每行两个整数x,y,代表士兵x比士兵y高。【输出格式】 一个1

2016-07-08 22:29:47 503

原创 【棋盘上的BFS】滑旱冰

【问题描述】 经过跟FJ长达数年的谈判,奶牛们终于如愿以偿地得到了想要的旱冰鞋。农场上大部分的区域都是平整的,适合在上面滑动,但有一些小块的土地上有很多岩石,凭奶牛们的旱冰技术,是没有办法通过的。农场可以看成被划分成R行C列的矩阵。快要开饭了,贝西发现自己在坐标为(1,1)的格子里,并且它想赶到坐标为(R,C)的格子的牛棚去享受晚饭。贝西以她所在格子为起点,每 1 秒可以向它面朝的方向(东、南、西

2016-07-08 22:05:50 413

空空如也

空空如也

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

TA关注的人

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