暂存

ContractedBlock.gif ExpandedBlockStart.gif View Code
 
   
#include " iostream "
#include
" iostream "
using namespace std;

int n;
int mark = 0 ;
char a[ 50 ] , b[ 50 ];
int c[ 50 ] , d[ 50 ];
int f[ 50 ] , e[ 50 ];
int La, Lb;
int marka, markb;
int s,t;
int i,j;
int _max;

int Max( int x, int y)
{
return x > y ? x:y;
}
void Add()
{
memset(e,
0 , sizeof (e));
int m = 0 ,flag = 0 ;
if (s > t)
{
for (i = s - 1 ,j = t - 1 ;i >= s - t,j >= 0 ;i -- ,j -- )
{
e[m
++ ] = (c[i] + d[j] + flag) % 10 ;
flag
= (c[i] + d[j] + flag) / 10 ;
}
for (i = s - t - 1 ;i >= 0 ;i -- )
{
e[m
++ ] = (c[i] + flag) % 10 ;
flag
= (c[i] + flag) / 10 ;
}
}
else
{
for (i = t - 1 ,j = s - 1 ;i >= t - s,j >= 0 ; i -- ,j -- )
{
e[m
++ ] = (d[i] + c[j] + flag) % 10 ;
flag
= (d[i] + c[j] + flag) / 10 ;
}
if (t > s)
{
for (i = t - s - 1 ;i >= 0 ;i -- )
{
e[m
++ ] = (d[i] + flag) % 10 ;
flag
= (d[i] + flag) / 10 ;
}
}
}
while (flag)
{
e[m
++ ] = flag % 10 ;
flag
/= 10 ;
}
Lb
= 0 ;
for (i = m - 1 ;i >= 0 ;i -- )
{
b[Lb
++ ] = e[i] + 48 ;
if (i == _max) b[Lb ++ ] = ' . ' ;
}
memset(c,
0 , sizeof (c));
memset(d,
0 , sizeof (d));

}
int main()
{

while (cin >> n)
{
memset(b,
' 0 ' , sizeof (b));
Lb
= 0 ;
while (n -- )
{
s
= 0 ,t = 0 ;
cin
>> a;
La
= strlen(a);
marka
= La - 1 ;
markb
= Lb - 1 ;
for (i = 0 ;i < La;i ++ ) if (a[i] != ' . ' ) c[s ++ ] = a[i] - ' 0 ' ;
for (i = 0 ;i < La;i ++ )
if (a[i] == ' . ' ) { marka = i; break ;}
for (i = 0 ;i < Lb;i ++ ) if (b[i] != ' . ' ) d[t ++ ] = b[i] - ' 0 ' ;

for (i = 0 ; i < Lb; i ++ )
if (b[i] == ' . ' ) { markb = i; break ;}

_max
= Max(La - marka - 1 , Lb - markb - 1 );

if (La - marka - 1 > Lb - markb - 1 )
{
for (i = Lb ; i < Lb + (La - marka - Lb + markb); i ++ )
d[t
++ ] = 0 ;
}
else
{
for (i = La ; i < La + (Lb - markb - La + marka); i ++ )
c[s
++ ] = 0 ;
}
Add();
}
int sign = Lb;

int LL = strlen(b);
int g = 0 ;
for ( i = 0 ; i < Lb ; i ++ ) if (b[i] == ' . ' ) sign = i;
for (i = 0 ;i < sign;i ++ )
f[g
++ ] = b[i] - ' 0 ' ;
for (i = sign + 1 ; i <= sign + 16 ; i ++ ) f[g ++ ] = b[i] - ' 0 ' ;
int flag = 0 ,k = 0 ;
for (i = g - 2 ;i >= 0 ;i -- )
{
if (f[i + 1 ] > 4 )
{
f[i]
= (f[i] + 1 + flag) % 10 ;
flag
= (f[i] + 1 + flag) / 10 ;
}
else break ;
}
if (flag) cout << flag;
for (i = 0 ;i < sign;i ++ )
{
cout
<< f[i];
}
cout
<< " . " ;
for (i = sign;i < sign + 12 ;i ++ )
cout
<< f[i];
cout
<< endl;
}
return 0 ;
}

转载于:https://www.cnblogs.com/FCWORLD/archive/2011/05/09/2041292.html

资源下载链接为: https://pan.quark.cn/s/4d91f8fa210b Docker CE(社区版)是 Docker 公司推出的开源容器运行时平台,能让开发者将应用及其依赖打包成可移植的容器,进而发布到各类流行的 Linux 系统或 Windows 系统上,还具备虚拟化功能。本教程着重介绍在 CentOS 7.x 系统离线安装 Docker CE 20.10.12 版本的详细过程,涵盖其全部依赖包。在 CentOS 7 中,Docker CE 的作用在于提供轻量级虚拟化技术,让应用程序在名为容器的隔离环境中运行,相较于传统虚拟机,由于共享宿主机操作系统,其在资源占用和启动时间上更具优势。 离线安装 Docker CE 20.10.12 的操作步骤如下: 准备离线安装包:先在有网络的环境下,将 Docker CE 20.10.12 的 RPM 包以及其所有依赖(如 docker-ce、docker-ce-cli、containerd.io 等)下载好,确保不遗漏任何必要文件,然后把它们打包成一个压缩文件,比如命名为 “docker-ce-20.10.12”。 上传到服务器:借助 FTP、SCP 等文件传输工具,把包含 RPM 包的压缩文件传输到 CentOS 7 服务器上。 解压并安装:在服务器上定位到压缩包所在位置,依据压缩文件格式,若为 .zip,执行 unzip docker-ce-20.10.12.zip;若为 .tar.gz,则运行 tar -zxvf docker-ce-20.10.12.tar.gz 来解压。 安装依赖:在解压后的当前目录下,运行 yum install *.rpm 命令,以此安装所有 .rpm 文件,涵盖 Docker CE 及其必需依赖。需注意,CentOS 7 要通过 EPEL 仓库获取部分依赖,若系统未配置 EPEL,可
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值