随笔分类 - 数学
摘要:"Paint Color" 该题关键就在于坐标离散化,然后要注意的一点就是把点坐标表示为每一个格子的坐标。
阅读全文
摘要:坐标离散化 在一些数据范围很大,但是又只需要保存一些直线的情况下,不需要把整个地图都记录下来,只需要把直线及其前后行列保存即可。这样数据范围最多为$6n 6n$。n 为直线条数。 测试数据:
阅读全文
摘要:"Physics Experiment" 这个题的关键就在于理解这个弹性碰撞,多个球之间的碰撞可以理解为是互不影响的,可以当作是擦身而过而不是相撞,最后再将其排个序即可。
阅读全文
摘要:二进制表示集合 空集: 只有第 i 个元素的集合: 向集合中加入第 i 个元素:`S|1 枚举$\{0,1,...,n 1\}$的所有子集: 枚举 sup 的所有子集: 枚举$\{0,1,...,n 1\}$的所有子集大小为 k 的集合的方法: ① 的值就是将其最低位的1独立出来后的值 ② 就是将
阅读全文
摘要:欧拉函数和欧拉定理 参考: "欧拉函数" 欧拉函数: 欧拉函数,即$\varphi(n)$,表示的是小于等于$n$和$n$互质的数的个数。 比如$\varphi(1)=1$。 利用唯一分解定理,我们可以把一个整数唯一地分解为质数幂次的乘积, 设 $n=p_1^{k_1}p_2^{k_2}...p_s
阅读全文
摘要:"D Same GCDs" 参考: "欧拉函数" "CF1295D Same GCDs" 题意很明显要求出当$k\in [a,a+m),gcd=gcd(a,m)$时,满足$gcd(k,m)=gcd$的$k$的个数,由欧拉函数可以转换为$gcd(k/gcd,m/gcd)=1,k\in [a,a+m)$
阅读全文
摘要:区间筛法 对$[2,\sqrt{b}]$进行埃氏筛法的同时对区间$[a,b]$进行筛选
阅读全文
摘要:线性同余方程 参考: "线性同余方程" 同余方程$ax\equiv b(mod c)$ 定理1: 方程$ax+by=c$与方程$ax\equiv c(mod b)$是等价的,有整数解的充要条件为$gcd(a,b)|c$。 根据定理1,我们可以先利用扩展欧几里得算法求出$ax+by=gcd(a,b)$
阅读全文
摘要:"D. Aroma's Search" 首先根据数据范围可以知道,数据点最多只有50多个,因此这道题可以暴力来解 另外我们还知道,最优解的数据点一定是连续的,因为第$i+1$个点必然在第$i$个点的右上方。 因为其数据范围很小,所以我们只需要遍历所有的情况即可。 代码:
阅读全文
摘要:gcd(a,b)和exgcd(a,b,x,y) : 当然也可以使用头文件 __gcd(a,b)` : 证明: 假设有 ①$ax_1+by_1=gcd(a,b)$ ②$a'x_2+b'y_2=gcd(a,b)$ 先假设②是在①的下面,也就是说,在递归顺序中②是先执行完的。 我们由$gcd(a,b)$的
阅读全文
摘要:三点共圆 三点: `(x[2].y[2]) x[3].y[3]` 圆心则为 ,半径可以根据两点之间距离公式进行计算
阅读全文
摘要:next_permutation(begin,end) 当排列还存在下一种(以字典序排列)排法时,返回 ,否则返回 返回 的同时,把数组变成字典序中的下一种排法。 测试代码: 输出:
阅读全文
摘要:"C. Two Arrays" $dp[i][j]$表示有$j$个数每个数的范围为$1~i$时的非递减排列种数,因为 n 和 m 的数据范围也不大,用记忆化搜索很快可以得出每一个值。 再来看满足条件时的$(a,b)$,$a$为非递减序列,$b$为非递增序列,所以$b$的最后一个数大于等于$a$的最后
阅读全文
摘要:取整 共包括三个函数,都在``头文件下 向下取整 向上取整 四舍五入 这些函数很显然只对小数有用,而当要运算两个整型数之间的除法时,要乘一个 1.0,以此来进行浮点数运算。
阅读全文
摘要:"C. Mafia" 参考: "Editorial for Codeforces Round 202" 假设最终答案为$x$,则$(x a[i])$表示的是第$i$个人可以充当监护者的局数,而$\sum^n_{i=1}{(x a_i)}$表示得则是在进行$x$局游戏保证每一个人完过瘾的情况下,可以用
阅读全文
摘要:"E1. Median on Segments (Permutations Edition)" 参考: "CF1005E1 Median on Segments (Permutations Edition) 思维" 中位数为m的条件为,在那一段中,小于 m 的数的个数为 x 个,大于 m 的数有 y
阅读全文
摘要:"D. Polycarp and Div 3" 参考: "1005D Polycarp and Div 3" 做这道题要明白一些东西: 能够被3整除的数,其数位之和为3的倍数 如果把数分成一位一位,相邻三个不为0位置一定能够组成一个被3整除的数(111,112,121,122,211,212,221
阅读全文
摘要:"C. New Year and Permutation" 参考: "Codeforces Round Hello 2020 A~E 题解" 发现了一个网站 "OEIS" ,如果打表找规律的话会很方便,虽然这道题没有用上.... 具体思路可看参考视频。 一般数学题都是打表找规律,如果找不出规律,例如
阅读全文
摘要:"E Common Number" 参考: "Codeforces Round 608 (Div. 2) E Common Number (二分 思维 树结构)" 具体做法可详见参考博客。 关键在于在分了奇偶之后,就是有序的了 在数据范围很大的时候,要尝试降低其复杂度,对答案进行二分就是一种降低复杂
阅读全文

浙公网安备 33010602011771号