自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 【板子】欧拉函数

例题 A - Relatives Given n, a positive integer, how many positive integers less than n are relatively prime to n? Two integers a and b are relatively prime if there are no integers x > 1, y > 0, z > 0 such that a = xy and b = xz. Input There are sev

2020-08-17 22:16:49 145

原创 I - Assigning to Classes CodeForces - 1300B

I - Assigning to Classes Reminder: the median of the array [a1,a2,…,a2k+1] of odd number of elements is defined as follows: let [b1,b2,…,b2k+1] be the elements of the array in the sorted order. Then median of this array is equal to bk+1. There are 2n stude

2020-07-11 18:31:23 163

原创 H - Non-zero CodeForces - 1300A

H - Non-zero Guy-Manuel and Thomas have an array a of n integers [a1,a2,…,an]. In one step they can add 1 to any element of the array. Formally, in one step they can choose any integer index i (1≤i≤n) and do ai:=ai+1. If either the sum or the product of al

2020-07-11 18:22:34 157

原创 欧拉筛板子

const int maxn = 1e7+5; bool vis[maxn];//1是质数,0不是质数 int P[maxn/10],tail;//最后一个质数的下标; void getPrime(int N){//查找1到N之间的质数 for(int i=2;i<N;i++) vis[i]=true; for(int i=2;i<N;i++){ if(vis[i]) P[tail++] = i; for(int j=0;P[j]<=N/i;j++)

2020-05-31 21:11:24 299

原创 HPU算法协会公开课第二期: 【基础算法2】(快速幂+二分)

HPU算法协会公开课第二期: 【基础算法2】(快速幂+二分) 快速幂板子 二分查找模板 A - Pseudoprime numbers Fermat’s theorem states that for any prime number p and for any integer a > 1, ap = a (mod p). That is, if we raise a to the pth power and divide by p, the remainder is a. Some (but not

2020-05-25 19:59:05 1947

原创 尺取法

尺取法的整个过程分为4部: 1.初始化左右端点 2.不断扩大右端点,直到满足条件 3.如果第二步中无法满足条件,则终止,否则更新结果 4.将左端点扩大1,然后回到第二步 返回的推进区间开头和结尾,求满足条件的最小区间的方法称为尺取法。 参考博客:尺取法枚举区间 :尺取法 — 详解 + 例题模板(全) 例:Poj3061 题意:给定一个序列,使得其和大于或等于S,求最短的子序列长度。 分析:首先,序列都是正数,如果一个区间其和大于等于S了,那么不需要在向后推进右端点了,因为其和也肯定大于等于S但长度更长,所以

2020-05-25 19:04:01 152

原创 二分查找模板

算法思路:假设目标值在闭区间[l, r]中, 每次将区间长度缩小一半,当l = r时,我们就找到了目标值。 int bsearch_1(int l, int r) { while (l < r) { int mid = l + r >> 1; if (check(mid)) r = mid; else l = mid + 1; } return l; } ...

2020-05-25 18:50:47 108

原创 快速幂板子

快速幂: 首先,快速幂的目的就是做到快速求幂,假设我们要求a^b, 假设我们要求ab,那么其实b是可以拆成二进制的,该二进制数第i位的权为2(i-1),例如当b==11时 a11=a(20+21+2^3)   11的二进制是1011,11 = 2³×1 + 2²×0 + 2¹×1 + 2º×1,因此,我们将a¹¹转化为算 a20*a21a2^3,也就是a1a2*a8 ,看出来快的多了吧原来算11次,现在算三次 那么怎么算呢 可以考虑成根据二进制的权值来求解的。那么在关于位运算的部分,我们可以逐位获取b的位,

2020-05-25 18:45:00 525

原创 HPU算法协会公开课第一期:【基础算法1】(STL 自定义sort 前缀和差分)

传送门(:https://vjudge.net/contest/374040#overview) A - 前m大的数 还记得Gardon给小希布置的那个作业么?(上次比赛的1005)其实小希已经找回了原来的那张数表,现在她想确认一下她的答案是否正确,但是整个的答案是很庞大的表,小希只想让你把答案中最大的M个数告诉她就可以了。 给定一个包含N(N<=3000)个正整数的序列,每个数不超过5000,对它们两两相加得到的N*(N-1)/2个和,求出其中前M大的数(M<=1000)并按从大到小的顺序排列

2020-05-17 22:08:06 1195

原创 19级算法训练赛第七场

19级算法训练赛第7场 A - 程序设计:合并数字 蒜头君得到了 n 个数,他想对这些数进行下面这样的操作,选出最左边的相邻的差的绝对值为 1 的两个数,只保留较小的数,删去较大的数,直到没有两个相邻的差的绝对值为 1 的数,问最多可以进行多少次这样的操作? 输入格式 输入第一行为一个整数 n(1 \leq n \leq 10^5)n(1≤n≤10 5),表示数字的总数 第二行为 n个整数 x_1,x_2,…,x_n(0 \leq x_i \leq 10^9)x 1 ,x 2,…,x n (0≤x i ≤1

2020-05-14 22:41:50 4445

空空如也

空空如也

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

TA关注的人

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