高精度
酷酷的Herio
这个作者很懒,什么都没留下…
展开
-
P3223 [HNOI2012]排队(组合数学&高精度)
P3223 [HNOI2012]排队(组合数学&高精度) 思路 高中组合数学+高精度,顺便重新整理了下我的高精度模板。 code // Problem: P3223 [HNOI2012]排队 // Contest: Luogu // URL: https://www.luogu.com.cn/problem/P3223 // Memory Limit: 128 MB // Time Limit: 1000 ms // Date: 2021-03-15 21:30:52 // --------by H原创 2021-03-16 12:33:39 · 376 阅读 · 0 评论 -
long long的加法溢出情况
long longlong\ longlong long的加法溢出情况: long longlong\ longlong long能储存的数据范围:[−263,263−1][-2^{63},2^{63}-1][−263,263−1]。 1.当a,b>0,a+b≥263a,b>0,a+b\geq2^{63}a,b>0,a+b≥263 a+b∈[263,264−2]a+b\in[2^{63},2^{64}-2]a+b∈[263,264−2]。 根据计算机原创 2020-10-13 19:27:20 · 2152 阅读 · 0 评论 -
#6233. Hash killer V(高精)
#6233. Hash killer V(高精) 思路:答案取所有模数的最小公倍数,然后转换为262626进制这样hash=0hash=0hash=0,然后第一个串全部为aaa,满足字典序最小,妙啊,注意求gcdgcdgcd的时候要先对BignumBignumBignum取模。 #include<bits/stdc++.h> using namespace std; typedef long long ll; const int N=1e3+5,M=2e4+5,inf=0x3f3f3f3f,mo原创 2020-07-21 07:38:59 · 483 阅读 · 0 评论 -
高精度(阶乘,加法,减法,乘法,高精乘低精,高精除低精,高精度比较)模板.
高精度(阶乘,加法,减法,乘法,高精乘低精,高精除低精)模板. 最近深受高精度的困扰,想用pythonpythonpython又不是很熟练,就把高精度板子都整理了一遍了,除了高精除高精没写,不想写了,太懒了。 ps:ps:ps:还是pythonpythonpython香。 便于以后使用和回顾。 #include<bits/stdc++.h> using namespace std; typedef long long ll; const int N=5e6+100; #define mst(a)原创 2020-06-02 21:45:57 · 542 阅读 · 0 评论 -
B - Multiplication 2 (大数乘法)
B - Multiplication 2 (大数乘法) 传送门 思路:看到高精度,首先就想到用pythonpythonpython。及其舒适。然后说说C++C++C++的做法。可以直接用高精度模板,但是太麻烦了。。 首先需要特判一下是否有000。若有000直接输出000.(避免之前乘积大于1e181e181e18但后面有0) 然后因为当a∗b>1e18→ a>double(1e18b)a*b>1e18\rightarrow \ a>double(\dfrac{1e18}{b原创 2020-06-02 15:25:04 · 502 阅读 · 1 评论 -
P2532 [AHOI2012]树屋阶梯($Catalan$数&高精度)
P2532 [AHOI2012]树屋阶梯(CatalanCatalanCatalan数) 题目传送门 思路:卡特兰数的变形,可根据包含直角点的矩形覆盖的阶梯点的位置进行加法原理,然后对每个情况进行乘法原理,可以得到卡特兰数的递推式的形式。 根据左上角阶梯的方案数×\times×右下角阶梯形的方案数===该情况方案数 由上图可知:图1为h(0)×h(3)h(0)\times h(3)h(0)×h(3),图2为h(1)×h(2)h(1)\times h(2)h(1)×h(2),图3为h(2)×h(1)…h(2原创 2020-05-12 15:02:10 · 441 阅读 · 0 评论 -
C - NUMBER BASE CONVERSION (高精度进制转换)
C - NUMBER BASE CONVERSION (高精度进制转换) 高精度的取余过程如下: 举个例子,101010进制下的171717转换为333进制. 1÷3=0……11\div 3=0……11÷3=0……1 1×10+7=171\times 10+7=171×10+7=17 17÷3=5……(2)17\div 3=5……(2)17÷3=5……(2) (2)(2)(2) 每轮的最后的余数即是每一轮的余数. 0原创 2020-05-11 09:59:12 · 522 阅读 · 0 评论 -
P1018 乘积最大(高精度&DP)
P1018 乘积最大(高精度&DP) 题目传送门 思路:建立状态方程:dp[i][j]dp[i][j]dp[i][j]表示前iii个数中使用了jjj个乘号的最大值. 通过枚举最后一个乘号的位置来实现状态转移:dp[i][j]=max(dp[i][j],dp[kk][j−1]×num(kk+1 to r))dp[i][j]=max(dp[i][j],dp[kk][j-1]...原创 2020-05-08 12:57:05 · 413 阅读 · 0 评论 -
E - Chinese Girls' Amusement (高精度&数论)
E - Chinese Girls’ Amusement (高精度&数论) 思路: AC代码: #include<cstdio> #include<cstring> using namespace std; const int N=5e3+5; int a[N],b[N],l; char s[N]; void divi(int *a,int f){ int...原创 2020-04-30 11:10:44 · 407 阅读 · 0 评论 -
P1045 麦森数 (数论&高精)
P1045 麦森数 (数论&高精) 题目传送门 题意:2^p-1的位数并输出后500位数 **思路:2p-1与2p的位数相同(因为2p个位数不为0),所以将2p转换为10^n 形式即可 ** AC代码: #include<bits/stdc++.h> using namespace std; const int N=1e3+5; int ans[N],tmp[N],a[N],...原创 2020-04-10 16:17:22 · 404 阅读 · 0 评论 -
P1037 产生数 (高精&DFS)
P1037 产生数 (高精&DFS) 题目传送门 给定以一大整数,k中数的转换方式。求一共可以转换为多少种不同的数。 思路:利用DFS求每一位可以转换的情况,根据乘法原理将每一位的情况相乘即为答案。 #include<bits/stdc++.h> using namespace std; int k,ans[100]={1},vis[10],tmp;//vis[i]标记该数是否...原创 2020-04-09 21:47:41 · 443 阅读 · 0 评论