高精模板
来源:互联网 发布:音乐喷泉动画制作软件 编辑:程序博客网 时间:2024/06/10 16:36
十进制
char tmp[M];struct bnt{ char num[M]; int len; bnt operator+(const bnt & t)const{ bnt c;c.len=max(len,t.len); for(int i=0;i<c.len;i++){ c.num[i]+=t.num[i]+num[i]; if(c.num[i]>=10)c.num[i]-=10,c.num[i+1]+=1; }if(c.num[c.len])c.len++; return c; } bnt operator*(const bnt & t)const{ bnt c; c.len=len+t.len-1;//a位数乘以b位数至少是a+b-1位数 for(int i=0;i<len;i++) for(int j=0;j<t.len;j++){ c.num[i+j]+=t.num[j]*num[i]; if(c.num[i+j]>=10) c.num[i+j+1]+=c.num[i+j]/10,c.num[i+j]%=10; }if(c.num[c.len])c.len++; while(!c.num[c.len-1]&&c.len>1)c.len--; //防止输出0000的情况 return c; }void rd(){ scanf("%s",tmp); int l=strlen(tmp); for(int i=l-1;i>=0;i--)num[len++]=tmp[i]^48; }void pt(){ for(int i=len-1;i>=0;i--)printf("%d",num[i]); puts(""); }};
万进制
char str[1000];struct bnt{ int num[1000],len; bnt(){memset(num,0,sizeof(num));} void rd(){ scanf("%s",str); int l=strlen(str),p=0; for(int i=l-1;i>=0;i-=4){ for(int j=max(0,i-3);j<=i;j++) p=p*10+(str[j]^48); num[len++]=p,p=0; } } void pt(){ printf("%d",num[len-1]); for(int i=len-2;i>=0;i--) printf("%04d",num[i]); puts(""); } bnt operator+(const bnt & tmp)const{ bnt C; C.len=max(len,tmp.len); for(int i=0;i<C.len;i++){ C.num[i]+=num[i]+tmp.num[i]; if(C.num[i]>=10000) C.num[i]-=10000,C.num[i+1]++; }if(C.num[C.len]>0)C.len++; return C; } bnt operator*(const bnt &tmp)const{ bnt C; for(int i=0;i<len;i++) for(int j=0;j<tmp.len;j++){ C.num[i+j]+=num[i]*tmp.num[j]; if(C.num[i+j]>=10000) C.num[i+j+1]+=C.num[i+j]/10000,C.num[i+j]%=10000; }C.len=len+tmp.len-1; if(C.num[C.len]>0)C.len++; while(C.len>1&C.num[C.len-1]==0)C.len--; return C; }};
4 2
- 高精模板
- 高精模板
- 高精模板
- 高精模板
- 高精模板
- 高精模板
- c++高精模板(+ ,-,*,/)
- DAY-1高精模板
- 高精模板 重载运算符 (+,-,*)
- 计算高斯模板
- 计算高斯模板
- 【高精度模板】【高精加减乘没有除】
- 高斯过滤得到高斯模板
- 生成高斯模板(C++)
- 生成高斯模板(C++)
- java 产生高斯模板
- 压位高精模板(支持加法、高精乘低精、高精除低精)
- 【给将来学神的算法详解--高精】(1)(我的)高精度模板
- 想知道密码框背后的内容吗?其实很简单
- Python脚本报错AttributeError: ‘module’ object has no attribute’xxx’解决方法
- 「Jenkins+Git+Maven+Shell+Tomcat持续集成」经典教程
- Keil BUG 导致读字库时,无法显示某些汉字解决办法
- 安卓:文本框TextView/EditText的开源库清单
- 高精模板
- 第九周项目2--对称矩阵压缩存储的实现与应用
- power supply框架
- 一、Azkaban概述
- CSDN我来啦~
- Recovery模式下进行重启或者关机LCD会闪一下白屏
- Web 前端开发精华文章推荐(jQuery、HTML5、CSS3)
- delegate
- Android 让真机调试(不使用数据线)成为可能