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;
}
相关推荐
小O的算法实验室9 分钟前
2024年ESWA SCI1区TOP,基于自适应模糊惩罚的多约束无人机路径规划状态转移算法,深度解析+性能实测
算法·论文复现·智能算法·智能算法改进
扶苏-su12 分钟前
Java--转换流-InputStreamReader 和 OutputStreamWriter
java·开发语言
一条大祥脚16 分钟前
Codeforces Round 1072 (Div. 3) 树形背包|线段树二分|区间并查集维护区间合并/set维护区间分裂
算法·深度优先·图论
Xの哲學27 分钟前
Linux SKB: 深入解析网络包的灵魂
linux·服务器·网络·算法·边缘计算
无限进步_31 分钟前
【C语言&数据结构】二叉树遍历:从前序构建到中序输出
c语言·开发语言·数据结构·c++·算法·github·visual studio
CodeByV34 分钟前
【算法题】哈希
算法·哈希算法
天赐学c语言40 分钟前
1.14 - 用栈实现队列 && 对模板的理解以及模板和虚函数区别
c++·算法·leecode
高洁0141 分钟前
AI智能体搭建(3)
人工智能·深度学习·算法·数据挖掘·知识图谱
花北城1 小时前
【C#】MES消耗类数量逻辑处理(物料消耗、打包装箱、生产订单派工等)
开发语言·c#
不知名XL1 小时前
day24 贪心算法 part02
算法·贪心算法