冗余的代码
posts - 13, comments - 0, trackbacks - 0, articles - 0
C++博客
::
首页
::
新随笔
::
联系
::
聚合
::
管理
高精度模板
Posted on 2009-03-08 11:36
杜仲当归
阅读(606)
评论(0)
编辑
收藏
引用
class
BigNum
{
private
:
int
M;
int
numlen (
int
n )
{
int
ret
=
0
;
while
( n )
{
ret
++
;
n
/=
10
;
}
if
( ret
==
0
)
ret
=
1
;
return
ret;
}
public
:
int
l[
50
];
int
len;
BigNum ()
{
M
=
100000000
;
memset ( l,
0
,
sizeof
( l ) );
len
=
1
;
}
BigNum
operator
=
(
int
x )
{
len
=
0
;
while
( x )
{
l[
++
len]
=
x
%
M;
x
/=
M;
}
return
*
this
;
}
void
copy ( BigNum
&
b )
{
len
=
b.len;
memcpy ( l, b.l,
sizeof
( l ) );
}
void
plus ( BigNum
&
b )
{
int
maxlen
=
b.len
<
len
?
len : b.len;
int
i, c;
for
( i
=
1
, c
=
0
; i
<=
maxlen; i
++
)
{
l[i]
+=
b.l[i]
+
c;
if
( l[i]
>=
M )
l[i]
-=
M, c
=
1
;
else
c
=
0
;
}
if
( c )
l[i]
=
1
, maxlen
++
;
len
=
maxlen;
}
void
print ()
{
int
i;
for
( i
=
len; i
>=
1
; i
--
)
{
if
( i
==
len )
fout
<<
l[i];
else
{
int
zerolen
=
8
-
numlen ( l[i] );
int
j;
for
( j
=
0
; j
<
zerolen; j
++
)
fout
<<
0
;
fout
<<
l[i];
}
}
fout
<<
endl;
}
}
;
只有注册用户
登录
后才能发表评论。
【推荐】100%开源!大型工业跨平台软件C++源码提供,建模,组态!
网站导航:
博客园
IT新闻
BlogJava
知识库
博问
管理
Powered by:
C++博客
Copyright © 杜仲当归
日历
<
2024年11月
>
日
一
二
三
四
五
六
27
28
29
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
1
2
3
4
5
6
7
常用链接
我的随笔
我的评论
我参与的随笔
留言簿
(1)
给我留言
查看公开留言
查看私人留言
随笔档案
2020年3月 (4)
2020年2月 (1)
2009年4月 (3)
2009年3月 (5)
搜索
最新评论
阅读排行榜
1. 凸包算法(1372)
2. SPFA(820)
3. POJ 1737 高精度模板改进版(772)
4. 高精度模板(606)
5. GPS轨迹挖掘-绕路分析(3)(463)
评论排行榜
1. USACO 4.3.2 The Primes(0)
2. 高精度模板(0)
3. SPFA(0)
4. 凸包算法(0)
5. ZOJ 3162 To Go or Not to Go(0)