R格式 (15届B) 高精度

cpp 复制代码
#include<bits/stdc++.h>
using namespace std;

void mul(vector<int> &A,int b)
{
	int t=0;
	for(int i=0;i<A.size();i++)
	{
		t+=A[i]*b;
		A[i]=t%10;
		t/=10;
		}
		if(t) A.push_back(t);
}

void add(vector<int >& A, int k,int b)
{
	int t=b;
	for(int i=k;i<A.size();i++)
	{
		t+=A[i];
		A[i]=t%10;
		t/=10;
	}
	if(t) A.push_back(t);
}


int main()
{
	int n;
	string d;
	cin>>n>>d;
	
	reverse(d.begin(),d.end());
	int dot=d.find('.');
	vector<int> D;
	for(auto c:d)
	 	if(c!='.')
	 	D.push_back(c-'0');
	
	while(n--) mul(D,2);
	if(D[dot-1]>=5) add(D,dot,1);
	for(int i=D.size()-1;i>=dot;i--)
	cout<<D[i];
	return 0;
}
相关推荐
yong999011 小时前
MATLAB实现DLT645协议
开发语言·matlab
biter down11 小时前
c语言18:结构体位段联合体
c语言·开发语言
foundbug99911 小时前
基于MATLAB绘制CALIPSO Level 2产品中体积退偏比垂直廓线和频率分布直方图
开发语言·matlab
ghie909011 小时前
图像去雾算法详解与MATLAB实现
开发语言·算法·matlab
jghhh0111 小时前
MATLAB中海洋要素计算工具箱解析
开发语言·matlab
aini_lovee11 小时前
基于MATLAB实现粒子群优化(PSO)优化BP神经网络
开发语言·神经网络·matlab
wearegogog12311 小时前
基于MATLAB的多尺度血管检测与线追踪实现
开发语言·计算机视觉·matlab
云泽80811 小时前
从三路快排到内省排序:探索工业级排序算法的演进
算法·排序算法
百锦再11 小时前
第14章 智能指针
android·java·开发语言·git·rust·go·错误
zhong liu bin11 小时前
Java并发编程【JUC】【一】
java·开发语言·juc