随笔分类 - ACM
摘要:#include <iostream> #include <cstring> #include <vector> using namespace std; const int MAX = 6; struct Tree{ double L, R; //树的左边和右边的长度 Tree():L(0), R
阅读全文
摘要:1. 四平方和定理 任何一个自然数都能由四个平方和组成 2. a²-(a+1)²-(a+2)²+(a+3)²=4; (a−1)³+(a+1)³+(−a)³+(−a)³=6a; 3 a*b的后导0个数 =a的后导0个数+b的后导0个数 1. zuhe[i][j]=zuhe[i-1][j]+zuhe[i
阅读全文
摘要:1. 约瑟夫数论问题 uva1363 我们发现 k/i的整数部分为p 如果k/(i+1)也为p 则有kmod(i+1)=k-(i+1)/p=k-i*p-p=kmodi-p 则为一个等差数列 然后从尾项倒着查.
阅读全文
摘要:https://codeforces.com/group/uVAsoW2Jkj/contest/336856/problem/D 给你一个数组A 让你随便加减数组B任一数 问能否把A全相等 首先 一整个数组可以凑出一个数x=k1*b1+.... 即 x=k*gcd(b1....) 那么如何让A全相等
阅读全文
摘要:题意 求小于等于n的数对(a,b) 要求gcd(a,b)==a xor b n<=3e7 如果单纯枚举 n^2 一定是T掉的 显然要优化一层循环 又因为 a xor b=c 则a xor c=b 那么把gcd(a,b)看作c 寻找b即可 而c是a的约数 为根号n 则循环化简到nlogn
阅读全文
摘要:for(int i=1;i<=n;i++) 初始化 for(int i=0;i<n;i++) { int k=lower_bound(g+1,g+n+1,A[i])-g; d[i]=k; g[k]=A[i]; } 假设我们已经算出来了d(以i为结尾的最长上升子序列) d[a]=d[b] 那么 如果a
阅读全文
摘要:这里我们先将其看作2维问题 给定一个长方形 让你求他的最大子矩阵, 我们枚举长方形的y1与y2 并将它压缩成1维 而1维的最大子区间我们非常好考虑 那3维同理 我们给定一个长方体 枚举她的z1与z2 压缩成一个二维矩阵 然后我们再枚举y1 y2 继续压缩 既可求得该长方体
阅读全文
摘要:#include<bits/stdc++.h> #include<iostream> using namespace std; typedef long long ll; int dir[4][2]={{1,0},{-1,0},{0,1},{0,-1}}; ll mod=19260817; char
阅读全文
摘要:vector<vector<int>> d = { {2, 1, 5, 0, 4, 3}, {2, 0, 1, 4, 5, 3}, {2, 4, 0, 5, 1, 3}, {2, 5, 4, 1, 0, 3}, {4, 2, 5, 0, 3, 1}, {5
阅读全文
摘要:#include<bits/stdc++.h> using namespace std; using ll=long long; const int maxn=(1<<20)+5; const double PI=acos(-1); struct Complex { double x,y; Comp
阅读全文
摘要:int next[100]; void getnext() { string a//(查找的串) next[0]=-1; int j=0,k=-1; for(j=0;j<a.size();j++) { if(k 1||a[j]==a[k]) { next[++j]=++k; } else { k=n
阅读全文
摘要:例1 链接:https://ac.nowcoder.com/acm/contest/9985/D来源:牛客网叶妹妹很喜欢玩石头,于是这天泽鸽鸽给她出了一道石子游戏,规则是这样的:有n堆石子排成一行,其中第i堆石子有ai个, 叶妹妹可以选择做无数次这种操作:每次操作把连续相邻的k个石子堆中的每堆石子
阅读全文
摘要:double a = 1; double b = 1; complex<double> cm(a, b); 且运算符已经重载过了
阅读全文
摘要:链接:https://ac.nowcoder.com/acm/problem/16561来源:牛客网恰逢 H 国国庆,国王邀请 n 位大臣来玩一个有奖游戏。首先,他让每个大臣在左、右手上面分别写下一个整数,国王自己也在左、右手上各写一个整数。然后,让这 n 位大臣排成一排,国王站在队伍的最前面。排好
阅读全文
摘要:组合数求和问题 考虑二项式定理 并带入xy 例1 本质不同的序列指的是含的数字不一样 1 1 2 3 与 1 3 2 1 本质是一样的 其本质就成为了 你有x个数 可以重复 放入m-2个位置中 我们转换思想 变成放+1的挡板 比如中间放2 2 2 ^ 3 ^^ 5 就是放了加1的挡板 但是与普通问题
阅读全文
摘要:void write(__int128 a) { if(a<0) { cout<<'-'; a=-a; } if(a>9) write(a/10); cout<<(int)(a%10); } __int128 read() { __int128 temp=0; string a; getline(c
阅读全文
摘要:#include<bits/stdc++.h> #include<iostream> using namespace std; typedef long long ll; const double pi = acos(-1.0); const double inf = 1e100; const do
阅读全文
摘要:5.1.1 三角形面积 利用两条边叉积除以二取绝对值 海伦公式 S=p(p−a)(p−b)(p−c)−−−−−−−−−−−−−−−−−√,p=(a+b+c)2S=p(p−a)(p−b)(p−c),p=(a+b+c)2 S=absinC2S=absinC2 5.1.2 三角形四心 5.1.2.1 外心
阅读全文

浙公网安备 33010602011771号