自定义博客皮肤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

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

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

原创 CF 707C 公式

题意: 给出直角三角形的一条边,求另外两条边。无解输出-1. 思路: 1、2无解。 n为偶数,(n * n / 4 - 1) ^ 2 + n * n = (n * n / 4 + 1) ^2 n为奇数,((n * n - 1) / 2) ^ 2 + n * n = ((n * n + 1) / 2) ^ 2题解说他上网查出来的2333 代码: #

2016-08-31 21:42:22 1100

原创 SRM 697 div2 550 推公式

题意: 给50个数ai,这些数都是2幂次数,且这些数都大于1。现在对于P = mul(ai), 是否存在bi,对于每个bi有ai*bi整除P。 思路: 化简之后就变成了S = sum(ai的幂次),是否存在bi使得(bi*ai的幂次)被S整除。 赛中的时候想了高斯消元,发现并不能做,因为系数比较多而且无法控制ai的幂次必须大于等于1。 实际上这是一道公式题。

2016-08-29 10:54:49 524

原创 Codeforces 706E 十字链表(dancing link)

Codeforces 706E题意: 给一个1000*1000的矩阵,有1000次操作,每次可以交换矩阵的两个子矩阵,保证子矩阵不重叠。输出最后的矩阵。 思路: 十字链表的版题,可以用dancing link的类似数组实现。 具体方法为,先把所有二维坐标转化为一维坐标。开两个数组ri[i],down[i]。分别表示对于某一维下标为i的矩阵单元格,它右边和下边的格子下标

2016-08-13 21:36:19 803

原创 Codeforces 703D 树状数组

Codeforces 703D 题意: 给1e6长度的区间,每个单位代表一个数。 给1e6个询问,每次问区间内出现次数为偶数次的数异或和。 思路: 赛中的时候想莫队水过去,结果pretest都没过233 正解是树状数组。首先假设是奇数次的话,就是一个简单前缀和。现在偶数次,有一个处理技巧就是记录这个区间出现过的数字的异或和。然后就是明显的树状数组统计题。

2016-08-06 21:24:24 524

原创 Codeforces 703C 思维or计算几何

Codeforces 703C题意: 给一个凸包,凸包有向x轴负向的恒定速度v。 现在某人从(0,0)出发,以最大速度不超过u的变速运动运动到(0,w) 问最少用时到达,且不碰到凸包 思路: 如果会直线与凸包相交的判定的话,就可以直接二分了。 赛中使用了分类讨论,挂了。以相对运动来说,相当于人从x轴上某一点出发。想复杂,错误的认为人先到凸包上某一点

2016-08-06 09:51:47 424

原创 HDU 3652 数位DP

HDU 3652 数位DP。dp[i][j][k][l],表示第i位,之前讨论数位j,有多少余数为k,是否已经遇到13为l 一种更优的设计方法为dp[i][j][k]。i为数位,j为余数,k表示三种状态,分别是前一个数不是1、前一个数是1、已经遇到13.#include <cstdio>#include <cstring>#include <cstdlib>#include <cmath>

2016-08-03 21:14:11 266

原创 HDU 3555 数位DP

HDU 3555 又是一道数位DP的题。dp[i][j]表示当前为i位,前一位为j的值。 与HDU 2089类似,发现只要修改转移方程,实现起来是有规律可循的。#include <cstdio>#include <cstring>#include <cstdlib>#include <cmath>#include <string>#include <algorithm>#includ

2016-08-03 20:42:46 299

原创 HDU 2089 数位DP

HDU 2089 数字中不能出现’4’和’62’,问在某个区间中这样的数字有多少个。 学下数位DP,抄了一个大哥的代码。 dp[i][j]表示当前讨论的是数字十进制表示的第i位,并且i+1位为j的总答案数。 网上还有一种表示方法是dp[i][j],j为0、1,表示前一位是否为6.#include <cstdio>#include <cstring>#include <cstdlib>#

2016-08-03 20:09:36 256

原创 2016多校第五场 1001 HDU 5781 DP

HDU 5781 DP题意: 从银行取钱,钱数为随机数[0,w]。如果当前取钱数大于真实的钱数,就会报错。报错次数有限制,求取钱次数的期望值。 思路: 首先用二分试,发现第三个样例过不了。 赛中的时候不是主要负责的题,给了一个dp[i][j]的公式后就没管了。 然而这样的dp过程是10^9的。 实际上,本题是有trick的。假设每次都按二分取,发现最多15次不合法的取法,就可以把

2016-08-03 11:22:02 703

空空如也

空空如也

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

TA关注的人

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