自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(37)
  • 收藏
  • 关注

原创 UVA - 11520 - Fill the Square(贪心)

题意:给定一个n * n(1 的格子中的字母不同,且从上至下,从左至右,组成一个字符串后字典序最小。由于组成字符串后的长度都为n * n,故字典序越往前的字母决定的优先级越大,所以贪心即可,从上到下,从左到右的补充格子里的字母,尽可能的使当前可以补充的字母尽量小。#include#include#include#include#include#includ

2016-08-30 19:29:24 420

原创 UVALive - 3635 - Pie(二分)

题意:有F + 1(1 因为答案是小数类型的,并且N高达10000,故不可暴力枚举。可以二分枚举最大面积,然后检查是否切出来派的总个数大于等于F + 1。(判相等时不可直接判相等,需要加精度控制)#include#include#include#include#include#include#include#include#include#incl

2016-08-30 18:45:40 370

原创 CodeForces 518C - Watto and Mechanism(模拟)

题意:有n(1 操作会使用一个应用(使用时需滑到应用所在的屏),使用后此应用与前边的相邻应用交换位置,退出此应用后会回到初始屏。问这m次操作总的滚动屏幕次数模拟即可。#include#include#include#include#include#include#include#include#include#include#include#i

2016-08-29 23:30:22 612

原创 CodeForces 518B - Han Solo and Lazer Gun

题意:给定两个串(长度范围为 1 ~ 2*10^5,两串长度不一定相同,由大、小写字母构成),需要让两串中完全相同字母匹配的尽量多,在此前提下,再让同一字母但大小写不同的对数尽量多。先尽量多的完全相同匹配,然后再尽量多的匹配大小写不同的字母即可#include#include#include#include#include#include#include#in

2016-08-28 20:43:41 717

原创 CodeForces 518A - Chewbaсca and Number

题意:给你两个长度相同的字符串,输出一个长度与它俩相同,且字典序位于两者之间(不可与其中一者相同)的字符串,若不存在则输出“No such string”。(输入保证字典序第一个严格小于第二个,且长度相同)水题,让最后一个加一个单位的字典序然后检查是否符合条件即可(注意为'z'的时候要进位,若长度超过则也不符合)#include#include#include#inc

2016-08-28 12:29:36 505

原创 CodeForces 688B - Lovely Palindromes

题意:输出第n(1 因为长度是偶数,所以前后两半之间是相互对称的,又因为一个数字的大小主要取决于较高位数的大小,所以数字的前一半决定数的大小,从1开始,1,2,3……对称即可得11,22,33……所以将数正着输出后再倒着输出一遍即可#include#include#include#include#include#include#include#include#i

2016-08-28 12:15:17 545

原创 CodeForces 686B - Little Robber Girl's Zoo

题意:将一个n(1 [ L,R ](区间内元素个数为偶数),将区间内第一项与第二项交换,第三项与第四项交换,第五项与第六项……在2W次内完成排序,输出每次操作。瞎搞即可,不断检查相邻元素是否满足 前者>=后者,不满足即交换,直到序列满足条件位置(n最大为100绝对不会超过2W步)#include#include#include#include#include#in

2016-08-28 12:02:20 795

原创 HDU 4596 - Yet another end of the world(扩展欧几里得)

题意:给定一系列的虫洞,每个虫洞都有自己的x,y,z,当你的 id 对 x 取余后结果落在[ y,z ]区间内,则会被吸引,被两个或两个以上的虫洞吸引会有危险,求能否宇宙飞船能否起飞。枚举每两个虫洞,有id - k1 * x1 = uid - k2 * x2 = v其中k1与k2分别为 id / x1 与 id / x2,u与v分别为求余后的结果。两式相减得  k2 *

2016-07-28 11:02:59 526

原创 CodeForces 288C - Polo the Penguin and XOR operation

题意:给定一个 n (1 从n ~ 0枚举所有的数,对于每个数找它异或后得到二进制都是 1 的数或者 1 尽量多的数。对于每个数,先找到与它二进制位数相同的全是 1 的数,然后把这个当成结果,与目前的数异或得到另一个数并记录,然后同时记录另一个数(可能用不到,但是为了节省时间)。加起来的结果可能超int,故用long long。#include#include#

2016-07-26 10:22:11 531

原创 CodeForces 534C - Polycarpus' Dice

题意:给定n (1 考虑最大和最小情况,作差即可(详情见代码注释)#include#include#include#include#include#include#include#include#include#include#include#include#include#include#include#include#includety

2016-07-25 11:41:16 368

原创 CodeForces 445B - DZY Loves Chemistry(并查集)

题意:给定n (1 利用并查集找出有多少连通块,n - 连通块个数 即为反应次数。#include#include#include#include#include#include#include#include#include#include#include#include#include#include#include#include#in

2016-07-25 10:36:57 336

原创 CodeForces 165C - Another Problem on Strings

题意:给定一个长度为 n (1 从前往后记录到第 i 个元素存在了多少个 1,然后从前往后找个数 >= k 的元素,再找 - k 与 - k + 1 之间与多少个元素加入结果即可。#include#include#include#include#include#include#include#include#include#include#include

2016-07-24 17:18:08 316

原创 CodeForces 166C - Median

题意:给定 n 个数字,给定一个数 k ,求至少需要添加几个数才能使这 n 个数的中位数等于 k (与数学上的中位数概念不同的是,有 n 个数,下标为 1 ~ n,则中位数为排序后的第 (n + 1) / 2 个数)。由小到大排序后,先找到最后一个小于 k 的位置,再找到第一个大于 k 的位置,那么中间这些位置都为 k ,看这些位置是否落在中位数的位置上,若没有,则就在这些位置中加 k

2016-07-24 16:18:05 396

原创 CodeForces 474C - Captain Marmot

题意:每组共4个点,4个点分别有起始坐标和轴心坐标,每个点每次都可以绕自己的轴心坐标90°,问能否用最少次数内4个点组成一个正方形,若能则输出最少次数,否则输出-1。每个点有4个方位可以选择,共4个点,4 * 4 * 4 * 4 = 256种,暴力即可#include#include#include#include#include#include#include

2016-07-24 14:54:58 355

原创 CodeForces 547B - Mike and Feet(单调栈)

题意:给定一个长度为 n (1 ≤ n ≤ 2 × 105) 的序列,求某一固定长度的连续子序列(长度为1 ~ n)中最小元素的最大值。对于某一元素,找出它为最小值的最大连续长度区间。1、对于找出的区间长度,直接取相同区间长度中最小值的最大值即可;2、对于未找出的区间长度,因为无论怎样一定有  长度为 len 的区间的最小值 长度为 len + 1 的区间的最小值,所以

2016-07-24 10:42:21 444

原创 CodeForces 687C - The Values You Can Make(01背包dp)

题意:给定n(1 一维表示总额,二维表示能否由一维的总额得出此额度。假如枚举到的硬币面值为 t ,如果存在dp[ i - t ] [ j ] = true,那么有1、dp[ i ] [ j ] = true;  相当于总额里增加一个 t 的面值的硬币,但实际组成 j 的额度时并没有用到它。2、dp[ i ] [ j + t ] = true;  相当于总额里增加一个 t

2016-07-11 23:52:14 1003

原创 UVA - 11134 - Fabled Rooks(贪心)

题意:给定n(n 分成横纵两个方向进行研究(每个方向上只要不在同一条线上即可)。贪心,先将每个车的范围按照先 a.r (将越能到达右边的位置的车,尽可能往后排,若可以放的最右边的位置相同(a.r == b.r),则更能往左延伸的车在前,因为排序时是尽量靠左排)#include#include#include#include#include#include

2016-07-11 10:37:18 382

原创 CodeForces 682C - Alyona and the Tree(dfs)

题意:给定一颗无向树(根节点编号为1),节点权值(1 ~ 10^9) 从根出发dfs即可,找到sad点则return,对遍历到的点计数,然后答案即为节点数 - 计数个数。若边的和出现负值,则取0:1、对于正在研究的节点来说,输入的权值必定为正(1 ~ 10^9),必定符合条件。2、对于接下来的节点来说,相当于把这个让边权值和为负的点,当作祖宗,继续研究接下来的节点(0与某个

2016-07-10 17:30:21 375

原创 CodeForces 518D - R2D2 and Droid Army(概率dp)

题意:n个人排成一队按队伍序列上扶梯,共 t 时刻,每时刻最多进一个人,进的概率为p,已经进去的人不能再出来,若排在队首的不进则后边的人无法进,求 t 时刻后扶梯上人数的数学期望。一维表示时刻,二维表示人数,有状态转移方程dp[ i + 1 ] [ j + 1 ] = dp[ i ] [ j ] * p;    //这一时刻进了一个人dp[ i + 1 ] [ j ] = dp

2016-07-08 14:38:47 591

原创 CodeForces 687A - NP-Hard Problem(二分图染色)

题意:给定n个顶点和m条边的无向图,求能否构成二分图,若能,输出两个顶点集,否则输出 -1对某个顶点,对于有边与它相连的其他点,染成与它不同的颜色,然后再研究这些点,继续染与它们有关系的点,直到所有有边相连的点都被染色完毕。不能构成:若要染的顶点之前已经被染成同样的颜色,则不能构成二分图。孤立顶点不作研究。#include#include#include#in

2016-07-08 10:04:49 589

原创 CodeForces 687B - Remainders Game(中国剩余定理)

题意:给定n个数(a1,a2,a3…… )和k,对于未知数x,假如你已知x mod ai(1 若这n个数的最小公倍数是k的倍数,则能求出#include#include#include#include#include#include#include#include#include#include#include#include#include#in

2016-07-06 08:54:16 571

原创 UVA - 11105 - Semi-prime H-numbers(筛选法)

题意:H数:4*n+1  (n = 0,1,2……)           H素数:不是1,也不能写成两个不是1的H数的乘积           H-半素数:能写成两个H素数的乘积           给定一个H数h(h 先求出所有的H素数,与筛选素数打表类似。然后对于每个h,暴力统计个数即可。#include#include#include#include

2016-07-04 22:27:32 288

原创 UVA - 11246 - K-Multiple Free set(容斥原理)

题意:给定n(1 容斥原理,(例如n = 20,k = 3,答案为16个数(1,9,2,18,4,12,5,15,7,8,10,11,13,14,16,17,19,20))一、n个数内共有n / k组数成为连续的k倍关系       (有1、3、9,2、6、18,4、12,5、15,7,8,10,11,13,14,16,17,19,20,共n - n / k = 14个)

2016-07-04 11:02:13 344

原创 UVA - 1623 - Enter The Dragon

题意:给定n个湖(标号1~n,起始时湖里均满水),给定m天天气预报,每天天气预报情况为一个数字a[i](范围0~n),当a[i]为0时代表晴天不下雨,否则就代表向哪个标号的湖中下暴雨。在不下雨的天气时你可以请神龙喝干任意一个湖里的水,下雨时则不能。若再往某个喝干的湖里下暴雨,则此湖会被重新填满。求是否能避免发生水灾,若能则给出在晴朗天气时神龙的喝水的顺序。贪心:对于每个下雨的天气,在它

2016-07-03 17:24:22 376

原创 UVA - 11536 - Smallest Sub-Array(滑动窗口)

题意:从给定字符串中,选最短连续子序列,包含1~k中的所有数。           尺取法(滑动窗口)解决:在第一次找到1~k的序列之后,向右滑动保证每个数至少存在一次,不断取最小值即可。#include#include#include#include#include#include#include#include#include#include#include

2016-06-30 11:11:03 322

原创 UVA - 10820 - Send a Table

题意:1 可以看出,实质就是与,n以内有多少对互素的元素,利用欧拉函数即可。#include#include#include#include#include#include#include#include#include#include#include#include#include#include#include#include#inclu

2016-06-25 23:34:57 294

原创 UVA - 11093 - Just Finish it up

题意:环形跑道上有n(n            (起点可立即加油;油箱中油量无上限)           由1到n枚举所有加油站并模拟过程。           假设枚举到了第i个起点,若到了第k个加油站,不能再走到第k+1个加油站,则第i到第k个加油站必定都不是起点(因为每次到了第m个加油站(i =0。所以如果起点是第m个加油站,那么就相当于枚举m前边的加油站作为起点时,到第

2016-06-25 23:22:35 403

原创 UVA - 821 - Page Hopping(floyd算法)

题意:用标号给定几个网站,一个标号(1~100)代表一个网站(标号的给定无连续性)。可以通过一个网站访问另一            个网站(通过给定的有向图路径),题目保证任意两个网站都有路到达且输入无自环,求每两个网站访问,最少            需要经过几个网站的个数平均值。           先重整标号使其有序,再用floyd算法求出每两个的最短路,最后统计即可。

2016-06-20 19:00:37 493

原创 CodeForces 679B - Bear and Tower of Cubes

题意:有各种棱长a(a>=1)的正方体,体积为a*a*a,一个物体的体积由各个正方体的体积相加而成            现求一个体积不超过m的物体,使其使用的正方体数量最多(若一样多则使体积尽量大)            但每次用正方体垒物体时,必须选不超过目前可使用的剩余体积的最大正方体。               最后输出使用的正方体数量和物体的体积。思路:设此时剩

2016-06-19 14:25:08 481

原创 UVA - 12627 - Erratic Expansion(找规律递归)

递归找规律即可,用前b行减去前a-1行的红气球个数求解,细节见代码#include#include#include#include#include#include#include#include#include#include#include#include#include#include#include#include#includetype

2016-06-15 21:29:26 445

原创 UVA - 1395 - Slim Span(Kruskal算法+枚举)

将边按权值排序后,枚举最小权值的边,从第一个边开始,直到往后能够构成生成树,并且记录中间出现过的最大权值和最小权值,最后不断取最小值即可切记每次枚举前,都要初始化父亲节点#include#include#include#include#include#include#include#include#include#include#include#inc

2016-06-13 00:22:38 447

原创 UVA - 1210 - Sum of Consecutive Prime Numbers

找到上限,直接暴力枚举即可#include#include#include#include#include#include#include#include#include#include#include#include#include#include#include#include#include#define Memset(x) memset(x,

2016-06-12 16:50:01 531

原创 UVA - 247 - Calling Circles(floyd算法)

题意:输出所有电话圈(电话圈:要求两个人直接或间接互相接通)用floyd算法求出传递闭包,即把所有间接接通的两个人都找出来并且标记然后再用并查集维护#include#include#include#include#include#include#include#include#include#include#include#include#inc

2016-06-12 16:15:38 391

原创 UVA - 10791 - Minimum Sum LCM(唯一分解定理)

题意:求至少两个整数的最小公倍数是n,且保证和最小先把n分解为多项质因子,然后为了保证

2016-06-12 16:12:59 344

原创 UVA - 1374 - Power Calculus(迭代加深)

从小到大枚举可能的次数,然后迭代加深搜索验证#include#include#include#include#include#include#include#include#include#include#include#include#include#include#include#include#include#include#define al

2016-05-29 13:02:03 557

原创 UVA - 11582 - Colossal Fibonacci Numbers!(快速幂+打表)

f(a^b)对n求余后会有周期出现,只需找出它等同于周期中的哪一项即可。最好提前打表。#include#include#include#include#include#include#include#include#include#include#include#include#include#include#include#include#includ

2016-05-19 17:58:09 422

原创 UVA - 1644 - Prime Gap(找相邻素数差值)

直接给素数打表后查找即可#include#include#include#include#include#include#include#include#include#include#include#include#include#include#include#include#include#define Memset(x) memset(x, 0

2016-04-25 16:07:13 592

空空如也

空空如也

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

TA关注的人

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