自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

beihai2013

生命是一个巨大的游乐场,或者空虚无比。

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

原创 1.4节 动态规划专题

1.4 动态规划专题 因为比较久了,所以直接贴代码…… 例题26 UVA 1394 约瑟夫环变形,翻过来递推也是绝好的题#include <cstdio>#include <cstring>#include <cstdlib>#include <cmath>#include <string>#include <algorithm>#include <iostream>using

2016-01-26 21:00:13 269

原创 CF 617E 莫队

CF 617E 题目链接: http://codeforces.com/problemset/problem/617/E 题意: 问[L,R]区间内,有多少个子区间,它们里元素的异或和为k。 思路: 莫队算法。 发现自己对于这个算法理解还是不到位。主要是下标问题。如本题,处理完pre数组后,pre数组表示XOR(a[1]^a[2]…a[i]),所以更新的时候更新左区间需要更新pre[i

2016-01-25 21:42:25 535

原创 BZOJ 3289 莫队 树状数组

BZOJ 3289 题目链接: http://www.lydsy.com/JudgeOnline/problem.php?id=3289 题意: 问[L,R]区间最少交换几次相邻数字使得整个序列有序。 思路: 统计逆序对,用树状数组。然后跑一遍莫队。 离散化部分容易超时,所以直接修改了数组。 源码:#include <cstdio>#include <cstring>#inclu

2016-01-25 18:10:27 285

原创 CF 86D 莫队(卡常数)

CF 86D 题目链接: http://codeforces.com/problemset/problem/86/D 题意: 一个数列,问[L,R]区间内(每个数字的个数的平方*数字的大小)的和。 思路: 莫队模板。 不过更新的时候卡常数闹哪样……从网上抄了一个,好像移位运算比单纯乘法快很多的样子,也mark一下好了 源码:#include <cstdio>#include <cs

2016-01-25 13:14:34 1267

原创 清橙A1206 莫队

清橙A1206 题目链接: http://www.tsinsen.com/A1206 题意: 中文题 思路: 莫队算法入门题。 从昨晚上看到现在也是有够笨的…… 莫队算法有一个引入的知识是曼哈顿最小生成树,不过这个好像比较难的样子,因为可能会用到平衡树或者线段树。只需要知道一个结论就可以,那就是对于一个二维平面图中一些点,如果要构造一个曼哈顿距离的最小生成树,那么选取边的时候对于一个

2016-01-25 10:27:41 452

原创 Bestcoder Round#69 div2

Bestcoder R69 div2 题目链接: HDU 5161-5163 Standing: 12/1058A: 简单暴力枚举#include <cstdio>#include <cstring>#include <cstdlib>#include <cmath>#include <string>#include <algorithm>#include <iostream>

2016-01-24 12:06:44 348

原创 HDU 5163 状压DP

HDU 5163 题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=5613 题意: 给一个矩阵,矩阵的值为原来矩阵此位置所在的九宫格里所有数字和(均为01) 还原出原来的矩阵。 思路: 状压枚举第一列的状态,然后递推后面状态就可以,很简单的模型题。 然而并不知道怎么合法,看到别人有用左上角的g值来推右下角,瞬间感觉智商再一次被碾压……详

2016-01-24 10:21:46 402

原创 LightOj 1045 大数处理

LightOj 1045 题目链接: http://lightoj.com/volume_showproblem.php?problem=1045 题意: 给n和base,求n!在base进制下最大位数。 思路: 看题解。 用log表示特别大的数,然后答案时log(n)/log(base)+1 源码:#include <cstdio>#include <cstring>#incl

2016-01-21 00:03:35 381

原创 POJ 1067 贝蒂定理

POJ 1067 题目链接: 题意: 思路: 看题解。 粘贴钢霸思路—— /*这个题目由于(a,b)和(b,a)是对称的,所以我们考虑a<=b的情况。 首先我们可以去打个表或者自己很容易证明,而且每一个整数, 只会出现在某个必败态中一次,第i个必败态为 a[i],b[i]=a[i]+i。现在的问题是怎么求a[i]。 根据贝蒂定理:若无理数A,B满足:1/A+1/b=1,那么集合

2016-01-21 00:02:20 1182 1

原创 HDU 5434 矩阵快速幂

HDU 5434 题目链接: http://www.bnuoj.com/v3/problem_show.php?pid=50239 题意: 有m*n矩阵,在上面放小象。 小象有攻击范围,为它的对角线所对应的四个单元格。但是小象有合成象的说法,即两个小象边相邻时会发生攻击范围的改变。 问有多少种放置小象的方案,使得小象之间不会相互攻击。 思路: 一种模型题,类似LightOj1332.

2016-01-18 23:12:51 317

原创 LightOj 1332 矩阵快速幂

LightOj 1332 题目链接: http://www.bnuoj.com/v3/problem_show.php?pid=13251 题意: 给一个10*n(n<=1e9)的矩阵,现在每列需要放两个国王。 已知国王会在他所在的九宫格范围内实施攻击,问有多少种放置方法使得国王之间不相互攻击。 思路: 刚开始拿到手是一点思路没有。 强行打表找规律,失败。 因为n很大,不是公式就是

2016-01-18 20:35:04 631

原创 LightOj 1081 二维线段树

LightOj 1081 题目链接: http://www.bnuoj.com/v3/problem_show.php?pid=13000 题意: 问一个给定矩形中某一块区域的最大值。 思路: 裸二维线段树不带修改。 源码:#include <cstdio>#include <cstring>#include <cstdlib>#include <cmath>#include

2016-01-18 18:56:18 413

原创 HDU 1823 二维线段树

HDU 5978 题目链接: http://www.bnuoj.com/v3/problem_show.php?pid=5978 题意: 中文题 思路: 裸二维线段树,题目坑在输入部分已注释 源码:#include <cstdio>#include <cstring>#include <cstdlib>#include <cmath>#include <algorithm>#

2016-01-18 18:55:37 273

原创 HDU 4819 二维线段树

HDU 4819 题目链接: http://www.bnuoj.com/v3/problem_show.php?pid=35690 题意: 给一个初始矩阵,矩阵大小1000 * 1000。 现在有一个操作询问以(i,j)为中心的正方形(保证边长为奇数)中矩阵格子里的最大值和最小值,输出(max+min)/2,并且把这个格子变成这个值。 思路: 裸二维线段树,其实是自己想的写法居然和大多

2016-01-18 18:55:04 250

原创 POJ 2155 二维线段树

POJ 2155 题目链接: http://www.bnuoj.com/v3/problem_show.php?pid=2274 题意: 给一个01矩阵,每次可以进行操作将[x1,x2,y1,y2]内的所有元素0变1、1变0。也可以进行询问,询问某一个格子的0和1。 输出询问。 思路: 二维线段树版题,稍微转化一下记录查询一个点时它所经过的路径上经过偶数次修改就为0,奇数次为1。线段树

2016-01-18 18:53:14 234

原创 Codeforces 596B

Codeforces 596B 题目链接: http://codeforces.com/contest/596/problem/B 题意: 刚开始有一个全部数都是0的序列。 现在有一种操作,可以选择一个i,使得i以后的所有数减一或者加一,问最少操作几次可以得到序列{bi} 思路: 水题 源码:#include <cstdio>#include <cstring>#include

2016-01-17 23:56:08 312

原创 UVA 19889 组合数学

UVA 19889 题目链接: http://www.bnuoj.com/v3/problem_show.php?pid=13014 题意: 1-n的排列,然后问多少个排列前m个中有且仅有k个在原来位置上。 思路: 组合数学,参考了别人代码。 对于前面确定的k个,可以在最后答案时乘上C[m][k]表示选取方案,现在假设已经确定哪些数。然后表示剩下的m-k个都不在自己位置上的方案,注意不

2016-01-17 23:45:35 292

原创 LightOj 1188 树状数组

LightOj 1188 题目链接: http://www.bnuoj.com/v3/problem_show.php?pid=13000 题意: 给一个数列(len <= 1e5),数列里的数(num <= 1e5)。 现有q次询问(<=1e5),询问某个区间的不同的数有多少个。 思路: 明显的树状数组统计,自己写的时候不太清楚那个树状数组到底应该怎么维护。有点想用扫描线类似的思想,

2016-01-17 23:44:53 258

原创 Codeforces R278 div2B 分类讨论

Codeforces R278 div2 B 题目链接: http://www.bnuoj.com/v3/problem_show.php?pid=44377 题意: 四个数满足中位数、平均数、最大数减去最小数相等。 先给出其中的n个,问怎样补齐其他数使得合法。 无合法方案输出-1。 思路: 找出性质:x1 + x4 = x2 + x3和x1 * 3 = x4 然后分类讨论,这里容

2016-01-17 18:30:12 419

原创 UVA 13184 期望DP

UVA 13184 题目链接: http://www.bnuoj.com/v3/problem_show.php?pid=13184 题意: n只老虎m匹麋鹿还有你自己。 每天任意的选择两个动物相遇,然后题目给出了相遇时会发生的情况。 问你活下来的概率。 思路: 看了别人代码,发现自己写的并没有问题,只是求组合数时求错了~ Dp[i][j]表示还剩i只老虎和j只麋鹿,自己活下去的概

2016-01-17 16:38:12 322

原创 UVA 18451 阅读题

UVA 18451 题目链接: http://www.bnuoj.com/v3/problem_show.php?pid=18451 题意: 10个寄存器,最多1000个ram里存放的指令,未存放的地方标记为000. 指令格式abc,然后题目中给出每个指令对应的操作,求执行了几次操作后退出。 思路: 阅读题。 看了代码秒懂,就是每次会从在ram中当前位置向下移动读取下一位置的指令,除

2016-01-17 15:01:25 218

原创 Codeforces Round 339 div2

Codeforces Round 339 div2 通过数:3 Standing: 325 / 5845 比赛状态不是很好,尤其是第一题大数被叉掉后整个人都不好了。第三题计算几何问可为借的版,后来老耿说海伦公式就可以过…… 补第四题的时候自己写的,结果WA了两天,最后发现思路有问题详见代码。 第五题问的Q神,再次感谢~A: 问[L,R]区间 套的大数版,就不粘贴代码因为太占篇幅。 有

2016-01-16 20:32:14 337

原创 SRM 678 div2 (1000题待补)

SRM 678 div2 (1000题待补) 通过数: 1 Standing change: 1015 - 1003 250: 一些droid和doors,问每个doors中距离最近的droids中,距离差最大的距离值多少。 暴力#include <vector>#include <list>#include <map>#include <set>#include <deque>

2016-01-14 08:35:58 313 1

原创 Topcoder SRM 677 div2

SRM 677 div2 通过数:2 250: 问[L,R]区间内有多少个素数且它是回文数的数。 由于数据范围比较小,直接暴力就可以。#include <vector>#include <list>#include <map>#include <set>#include <deque>#include <stack>#include <bitset>#include <algo

2016-01-13 08:09:14 438

原创 Codeforces Educational Round 5

Codeforces Educational Round 5 通过数: 4 Standing: 196/4176 题目链接: http://codeforces.com/contest/616 A: 两个大数,可能有首0. 问哪个数大#include <cstdio>#include <cstring>#include <cstdlib>#include <cmath>#incl

2016-01-12 11:34:08 233

原创 Codeforces Round #338

Codeforces Round #338 比赛链接:http://codeforces.com/contest/615 通过数:1 Final standing:1360 比赛状态不是很好,因为期考周有个半个星期没做题,然而当时是第二天有操系考试的情况下做的,基本能做就很开心了。 A: 问n个数中是不是有数字没有出现过#include <cstdio>#include <cstrin

2016-01-11 18:03:27 251

原创 HDU 5607 矩阵快速幂

HDU 5607 题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=5607 题意: 给一个n个点有向图(<=50),有m条边(<=1000). 现在已知对于一个点,下次可以等可能的走到有出边的下一个点。 从一个点出发,求最后走到某个点的概率x/y.输出x * y^(1e9+5) 思路: 妥妥的用矩阵快速幂优化一个转移矩阵没什么好说的。

2016-01-10 13:13:14 508

原创 Codeforces GoodBye 2015

Codeforces GoodBye 2015 A: 返回2016年星期几有几天,或者返回一个月的第几日有几天。#include <cstdio>#include <cstring>#include <cstdlib>#include <cmath>#include <string>#include <algorithm>#include <iostream>using names

2016-01-02 13:13:26 348

原创 Codeforces 611F 思维

Codeforces 611F 题目链接: http://codeforces.com/problemset/problem/611/F 题意: 有一个矩阵(500000 * 500000)。 现在有一个操作序列(500000),可以使一个格子上下左右走。问每个格子需要走操作序列(走到尾巴循环至开始)上几个操作可以碰到边界。如果有格子碰不到输出-1. 源码: /* 基本照T神

2016-01-02 13:12:25 621

原创 Codeforces 611E 贪心 STL

Codeforces 611E 题目链接: http://codeforces.com/contest/611/problem/E 题意: 给n(200000)只怪物的生命值,然后三个英雄的攻击力。 英雄可以合力打败一只怪物,按回合执行,每个回合英雄最多打败一只怪物。 问最少几个回合打败所有怪物。 不能打败所有怪物输出-1. 思路: 标解不是这样的,因为讨论比较多个人比较倾向下面的

2016-01-02 13:11:00 993

原创 Codeforces 611D 动态规划

Codeforces 611D 题目链接: http://codeforces.com/problemset/problem/611/D 题意: 给一个数字串(5000),问有几种分割数字串的方式,使得在原来的顺序上,后一个数字串表示的数字肯定比前一个大。 思路: DP 源码: /* dp[i][j]表示以i开头,j结尾最为最后后缀的有多少种字符串。 容易知道dp

2016-01-02 13:09:28 813

空空如也

空空如也

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

TA关注的人

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