自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

LzyRapX

https://github.com/LzyRapx

  • 博客(24)
  • 问答 (1)
  • 收藏
  • 关注

原创 BZOJ 3224 Tyvj 1728 普通平衡树 (Splay)

题目链接: BZOJ 3224题意: 让你实现一棵树,实现 插入, 删除,查询xx数的排名,查询排名为xx的数 ,求xx的前驱(前驱定义为小于xx,且最大的数), 求xx的后继(后继定义为大于xx,且最小的数)的功能。题解: 套平衡树Splay。AC代码:#include <cstdio>#include <cstring>#include <iostream>using namespa

2017-06-27 13:39:05 462

原创 ACdream 1006 Mengzhu (数学推导)

题目链接: ACdream 1006题意: 题解:纯数学推导。 因为: log2(x+y)=Alog2(x+y)=A log2(x−y)=Blog2(x-y)=B 所以, 2A=x+y2^{A} = x+y 2B=x−y2^{B} = x-y相加一下,2x=2A+2B2x=2^{A}+2^{B} 所以,x=2A+2B2=2A−1+2B−1x=\frac{2^{A}+2^{B

2017-06-23 15:51:33 392

原创 ACdream 1007 a + b (数学+快速幂)

题目链接: ACdream 1007 题目: 题解:不说了….看代码吧…AC代码:#include <bits/stdc++.h>using namespace std;typedef long long ll;const ll mod = 10000000007LL;ll q_mod(ll a, ll b) //a^b { ll ans = 0; while(b)

2017-06-22 18:22:03 492

原创 ACdream 1154 Lowbit Sum (数位dp)

题目链接: ACdream 1154题解:数位dpdp。 这题可以加深对 lowbitlowbit 的理解啊。 你打个表就可以发现规律了。 当 nn 为偶数时,dp[n]=dp[n2]+n2dp[n] = dp[\frac{n}{2}]+\frac{n}{2} 当 nn 为奇数时,dp[n]=dp[n2]+n2+1dp[n] = dp[\frac{n}{2}]+\frac{n}{2}

2017-06-22 14:00:27 409

原创 ACdream 1106 游泳水平有限的瑶瑶 (计算几何)(点到直线的最短距离)

题目链接: ACdream 1106题意: 给你两个凸多边形,求这两个凸多边形的最短距离。题解: 就是让你求点到直线的最短距离。AC代码:/** this code is made by LzyRapx* Problem: 1106* Verdict: Accepted* Submission Date: 2017-06-21 20:11:16* Time: 4MS* Memory

2017-06-21 20:41:34 442

原创 ACdream 1105 瑶瑶带你玩激光坦克 (dfs)

题目链接: ACdream 1105题解: dfs.dfs. 就是从原点向四个方向无限搜….遇到镜子就不断换方向。AC代码:#include <bits/stdc++.h>using namespace std;typedef long long ll;const int maxn = 5e6+10;char mp[1234][1234];bool vis[1234][1234][4

2017-06-21 18:33:26 324

原创 ACdream 1100 瑶瑶饿了(最短路+dp)

题目链接: ACdream 1100题解: 先求出最短路,再dpdp。 求最短路你可以SPFASPFA,也可以FlodyFlody,O(n3)O(n^3)。但用SPFASPFA要快。AC代码:/** this code is made by LzyRapx* Problem: 1100* Verdict: Accepted* Submission Date: 2017-06-21 09

2017-06-21 10:44:17 346

原创 ACdream 1089 barty的智商 (二分)

题目链接: ACdream 1089题解: 二分。 直接二分枚举智商,然后将大于二分出来的智商的边建一个图,然后直接从入度为 00 的点开始搜。 低于或等于当前智商的课程肯定能直接学习,大于的就看一下能不能从先修课那里转过来。 如果能搜到全部点(课程),那么肯定能学完的。依次二分得到最低智商即可。AC代码:#include <bits/stdc++.h>using namespace s

2017-06-20 15:07:04 328

原创 ACdream 1084 寒假安排 (数学题)

题目链接: ACdream 1084题解: 就是让你求A(n,m)A(n,m)的KK进制下末尾0的个数。 将KK进行素因子分解,然后计算每个素因子在n!−(n−m)! n! - (n - m)!的指数,那么每个素因子在n!−(n−m)! n! - (n - m)! 中的指数除以KK 分解出来的指数,取其最小值就是答案了。AC代码:#include <bits/stdc++.h>using n

2017-06-19 23:52:54 387

原创 ACdream 1077 LCM Challenge (数学题)(LCM)

题目链接: ACdream 1077题解: 要使LCMLCM最大,那么显然就是要gcd(gcd(a,b)∗gcd(b,c)∗gcd(a,c))=1gcd(gcd(a,b)*gcd(b,c)*gcd(a,c))=1,如果nn是奇数,那么答案显然是n∗(n−1)∗(n−2)n*(n-1)*(n-2)。 如果nn是偶数,且n%3=1n\%3=1时,答案显然是n∗(n−1)∗(n−3)n*(n-1)*

2017-06-19 14:52:13 347

原创 ZOJ 3261 Connections in Galaxy War (离线处理+逆向并查集)

题目链接: ZOJ 3261题意: 给你一些点,每个点有权值,然后有一些边,相连。无向的。然后给你一些操作: query a: 表示查询aa相连通的点中权值最高的点的编号,如果存在多个,输出编号最小的那个。 destory a , b :表示删除连接a,b的边。题解:逆向并查集。 如果我们直接按照常规的想法,先用并查集把所有通道连起来,然后再删除边。但是这样想,建立边的关系又把边的关系删除

2017-06-14 20:52:49 501

原创 Hrbust 1214 方格取数 (双线程dp)

题目链接: Hrbust 1214题解: 双线程dpdp。设dp[k][i][j]dp[k][i][j],其中kk表示走了kk步,ii表示第一个人在ii 列,jj表示第二个人在jj 列,那么这时第一个人在k−i+1k-i+1行,第二个人在k−j+1k-j+1行。 所以 dp[k][i][j]=dp[k−1][i−1][j]+mp[k−i+1][i]+mp[k−j+1][j]dp[k][i][

2017-06-14 17:11:06 565

原创 FZU 2203 单纵大法好 (二分)

题目链接: Fzu 2203题解: 二分。 问你老S最晚将被哪个炮弹第一次击中?显然符合答案单调性。二分一下位置在check一下就可以了。代码://#include <bits/stdc++.h>#include <iostream>#include <cstdio>#include <algorithm>#include <cstring>using namespace std;

2017-06-12 09:58:08 422

原创 ACdream 1108 The kth number (莫队算法)

题目链接: ACdream 1108题意: 就是问你在范围[ L,R ]中出现频率为第K大的出现次数。题解: 莫队算法。sum[i]sum[i]表示此时区间内出现次数大于等于 ii 的数的种类。复杂度:O(n∗n√)O(n*\sqrt{n})。其实莫队算法就是一个离线的暴力。莫队算法首先将整个序列分成n√\sqrt{n}个块(同样,只是概念上分的块,实际上我们并不需要严格存储块),接着将每个询

2017-06-08 22:46:48 620

原创 ACdream 1064 完美数(数位dp)

题目链接: 点击我打开题目题意:在[L,R][L, R] 的正整数区间内,要么包含3 要么包含 8 的不同的整数有多少个?题解:数位dp。 设: dp[i][0]dp[i][0]表示既没有3也没有8的, dp[i][1]dp[i][1]表示有3但是没有8的, dp[i][2]dp[i][2]表示有8但是没有3的。代码:/** this code is made by LzyRapx*

2017-06-07 09:38:41 381

原创 ACdream 1056 Bad Horse (判断二分图)(并查集 or BFS)

题目链接: ACdream 1056题解: 其实就是让你判断是否是一个二分图。 随便做….BFS or dsu (并查集)。 我都写一个吧。BFS代码:/** this code is made by LzyRapx* Problem: 1056* Verdict: Accepted* Submission Date: 2017-06-06 22:53:47* Time: 68MS

2017-06-06 23:13:59 886

原创 ACdream 1038 Alien Numbers (模拟)

题目链接: 点击打开题目题意: 看了22遍,居然还不知所云…再看几遍才知道说啥….英文阅读能力有点退化了呀…其实就是进制转换。 拿第三个样例来说, 因为sourcelanguagesource_language是1616位,所以是个1616进制。(十进制)1313转换成1616进制就是1919。 "13"(aliensource)=1∗161+3∗160=16+3=19(16进制)"13"

2017-06-06 14:37:50 472

原创 ACdream 1025 Transform (dp)

题目链接: ACdream 1025题意: 让你求从aa转换到bb的最少步数,aa可以转化到a+x,xa+x,x是aa的因子。题解: dpdp题。 转换方程很容易推导出来啊。 设dp[i]dp[i]表示转换到 ii 时的最少步数。 那么,我们只需要考虑dp[i+j]dp[i+j] 和 dp[i+ij]dp[i +\frac{i}{j}]。其中,jj 是 ii 的约数。aa 转到 bb 总

2017-06-05 21:35:06 294

原创 ACdream 1667 调皮的数一 (大数+dp)

题目链接: ACdream 1667题解: 很显然是dp题dp题。 当时状态可以由左边的跑道,右边的跑道,跑道不变这三种状态转换而来。 设dp[i][j]dp[i][j]表示人跑了ii 步跑到jj 跑道的方案数。 那么,dp[i][j]=dp[i−1][j+1]+dp[i−1][j]+dp[i−1][j−1]dp[i][j] = dp[i-1][j+1]+dp[i-1][j]+dp[i-1

2017-06-04 21:47:26 456

原创 ACdream 1773 最长非回文串 (脑洞题)

题目链接: ACdream 1773题解: 其实很简单,如果给的是回文字符串,那么就输出字符串长度减一的数值;如果不是回文字符串,就输出该字符串长度的数值。 注意:要考虑所有字符都一样的情况。代码:/** this code is made by LzyRapx* Problem: 1773* Verdict: Accepted* Submission Date: 2017-06-04

2017-06-04 15:54:18 448

原创 《数论概论》读书笔记 第5章 整除性与最大公因子数

这张就是最大公因子的一些概念和求gcdgcd。 高中必修三,就已经知道可以有“辗转相除法”和“更相减损术”等方法能够更快的求出两个数的最大公因数 讲述一些概念。 mm整除nn指nn是mm的倍数。 如果mm整除nn,我们记为m|nm | n。 如果mm不整除nn,则记为m∤nm\nmid n。 两个数aa和bb(不全为零)的最大公因数的最大公因数是整除它们两个的最大公因数,记为gcd(a,

2017-06-04 12:19:50 5655

原创 《数论概论》读书笔记 (第四章) 高次幂之和与费马大定理

这章讲的东西就是费马大定理。很少的内容。在18和19世纪高斯和欧拉证明了指数为33的方程没有解,狄利克雷与勒让德证明了55次方程没有解。 n>=3n>=3时方程:an+bn=cna^n+b^n=c^n没有整数解的这个一般性结论被称为“费马大定理”。这个就是高次幂之和。至今,证明了存在无穷多个素数pp使得ap+bp=cpa^p+b^p=c^p没有解且pp不整除abcabc。习题解析: 1.1.

2017-06-03 20:45:10 5097

原创 HDU 2605 Snake(DFS+BFS+技巧+细节)(好题)

SnakeTime Limit: 10000/6000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 222    Accepted Submission(s): 45Problem DescriptionSnake is a popular gam

2017-06-03 01:33:34 2051 4

原创 HDU 2197 本原串 (数学+容斥)

题目链接: HDU 2197题意: 由0和1组成的串中,不能表示为由几个相同的较小的串连接成的串,称为本原串,有多少个长为n(n<=100000000)n(n<=100000000)的本原串? 答案mod2008\mod2008. 例如,100100100100不是本原串,因为他是由两个100100组成,而11011101是本原串。题解: 我们考虑一下容斥原理,长度为nn的01串的总数为2

2017-06-02 13:45:31 514

空空如也

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

TA关注的人

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