自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 O(1) long long快速乘

很久以前做题的时候看到的。inline long long multi(long long x,long long y,long long mod){ long long tmp=(x*y-(long long)((long double)x/mod*y+1.0e-8)*mod); return tmp<0 ? tmp+mod : tmp;}利用了long doub...

2019-07-14 19:40:41 431

原创 C++宏定义学习笔记

本博客中提供的技巧主要用于ACM中。当代码中有2段重复代码,但是里面用到了很多局部变量,懒得写一个inline时,可以用#define func(x, y) {\ statement;\ statement;\}debug时打印变量:#if DEBUG#include <iostream>#define debug(x) {cout << #x"...

2019-07-14 18:39:46 397

原创 二维线段树 矩形加 矩形求和

题目链接:https://www.luogu.org/problemnew/show/U22582我用的树套树写法。all in one 代码:#include <cstdio>#include <cstring>using namespace std;#define MAXN 2010#define MAXM 2010struct LAZY { ...

2019-07-13 12:23:54 785

原创 poj 3667 STL写法(非线段树写法)

题目链接:https://vjudge.net/problem/POJ-3667题目大意:已知数组长度为n (n <= 50000),一开始全部为0。有m (m <= 50000)个操作,有两种操作给出d,找到最小的r,使得区间[r, r + d - 1]内所有数组元素都为0。若能找到,则输出r,并且把该区间元素都变成1。若找不到,则输出0。给出x和d,将区间[x, x+d-...

2019-07-12 17:08:53 97

原创 codeforces 1184 C2 曼哈顿距离转切比雪夫距离,矩形覆盖最大点数转最大前缀

cf链接:题意是给300000个点,点的横坐标和纵坐标范围为[-1e6, 1e6],找一点A,使得与A的曼哈顿距离 <= r的点数最大,并输出最大点数。观察可知,与A曼哈顿距离<=r的点构成了一个菱形。注意到菱形的边界的函数为x + y = k和x - y = k,因此想到可以把点(x, y)的坐标变成(x + y, x - y),从而使得这些点构成一个正方形,正方形的边长为2 *...

2019-07-08 21:59:40 309

原创 2018沈阳现场赛K题题解 约瑟夫问题

vjudge链接:https://vjudge.net/problem/Gym-101955K这题有一个非常重要的条件,那就是sum(min(m, k)) <= 2e6因此我们可以分情况讨论。下面假设n为初始人数,m为步长,要求第k个被弹出的人的编号,编号从0开始。k < m此时k最大为2e6。因此我们可以使用一个O(k)的方法求出答案。设f(n, k)为初始为n个人时第k...

2019-07-08 16:10:38 339

原创 2017多校北航F题 群论

cf链接:https://codeforces.com/gym/102253/problem/F把a和b都看成函数,那么表达式转化为f(i) = b(f(a(i)))显然f(i)可以由f(a(i))确定。表达式可以等价地转化为f(a(i)) = b^-1^(f(i))显然f(a(i))可以由f(i)确定。本来的思路是扫一遍a数组,把i和a[i]用并查集放到同一个等价类中,然后每一个等...

2019-07-07 14:48:50 165

原创 luogu 1484 种树 比较严格地证明贪心选择性

题目链接:https://www.luogu.org/problemnew/show/P1484首先想到dp,但是复杂度是O(n*k),本题吃不消。假设种k-1棵树时的最优解为Ak-1,种的树从小到大的下标是(x1,x2,x3,…,xi,…,xk-1),那么种k棵树的最优解一定可以通过从种k-1棵树的最优解中删除一棵树并增加两棵树在它两边或者只增加一棵树得到。证明如下:首先证明如果删除了树,...

2019-07-07 12:21:50 184

空空如也

空空如也

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

TA关注的人

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