高精度大数运算模板
来源:互联网 发布:cs结构的java开发 编辑:程序博客网 时间:2024/05/22 00:28
#define MAX 100000 #define base 10000 #define digit 4 struct bigint { int c[MAX]; int len; void init() { len = 0; memset(c,0,sizeof(c)); } bigint() { init(); len = 1; } bigint(int n) { init(); do { c[len++] = n%base; n /= base; } while(n); } bigint(char* s) { init(); for(int i=strlen(s);i>=0;i--) c[i/4] = c[i/4]*10 + c[i] - '0'; } bigint(const bigint & n) { *this = n; } bigint & operator = (const bigint & a) { len = a.len; for(int i=0;i<len;i++) c[i] = a.c[i]; return *this; } bigint operator + (const bigint & a) const { bigint t; t.len = max(a.len,len); for(int i=0;i<t.len;i++) t.c[i] = c[i]+a.c[i]; for(int i=0;i<t.len;i++) t.c[i+1] += t.c[i]/base, t.c[i] %= base; if(t.c[t.len]) t.len++; return t; } bigint operator * (const bigint & a) const { bigint t; t.len = a.len+len+2; for(int i=0;i<len;i++) for(int j=0;j<a.len;j++) { t.c[i+j] += c[i]*a.c[j]; t.c[i+j+1] += t.c[i]/base; t.c[i+j] %= base; } for(int i=0;i<t.len;i++) { t.c[i+1] += t.c[i]/base; t.c[i] %= base; } while(!t.c[t.len-1]) t.len--; return t; } void out() { printf("%d",c[len-1]); for(int i=len-2;i>=0;i--) { printf("%04d",c[i]); } } friend ostream & operator << (ostream & os,const bigint & a) { os << a.c[a.len - 1]; for(int i = a.len - 2;i>=0;i--) { os.width(digit); os.fill('0'); os << a.c[i]; } return os; } friend istream & operator >> (istream & is,bigint & a) { char s[MAX*4+1]; is>>s; bigint t(s); a = t; return is; } };
0 0
- 高精度大数运算模板
- 大数高精度运算(模板)
- 高精度模板 大数的基本运算
- 高精度运算 大数加法
- 大数高精度运算
- 大数(高精度)运算
- 大数(高精度数)模板
- 大数高精度模板
- 高精度模板(大数)
- 高精度/大数模板
- 大数高精度加减乘除模板
- 大数模板(高精度)
- 高精度大数运算的实现
- java高精度、大数运算总结
- 大数减法 (高精度运算)
- 大数运算之高精度加减法
- 高精度运算模板
- C++高精度运算模板
- Gleasy首席架构师薛珂:以开源为基础实现分布式框架及中间件
- 各语言中sql语句的写法(PostgreSQL)
- 模拟海量OpenVPN/IPSec终端进行VPN隧道容量测试
- 一步一步跟我学习lucene(10)---lucene搜索之联想词提示之suggest原理和应用
- 基于Office Web Apps Server 2013 的文档在线预览汇总
- 高精度大数运算模板
- linux usb驱动,一个简单的usb驱动,simp_usb
- 2D物理引擎--开坑篇
- JAVA之设置背景图片的几种方法
- 致大学生:连工作都找不到的趁早别创业
- C 语言中的指针和内存泄漏
- 奢侈品品牌控告中国在线购物巨头容许假货
- 注意区分left join on 后面的条件 和where 后面的条件
- 网络流24题解题报告小结