高精度计算_vector
#include<bits/stdc++.h>
using namespace std;
// return a+b;
vector<int> add(vector<int>&a,vector<int>&b){
reverse(a.begin(),a.end());
reverse(b.begin(),b.end());
vector<int> c;
int t=0;
for(int i=0; i<a.size()||i<b.size(); i++){
if(i<a.size()) t+=a[i];
if(i<b.size()) t+=b[i];
c.push_back(t%10), t/=10;
}
if(t) c.push_back(1);
reverse(c.begin(),c.end());
return c;
}
// return a-b;
vector<int> sub(vector<int>&a,vector<int>&b){
reverse(a.begin(),a.end());
reverse(b.begin(),b.end());
vector<int> c; int t=0;
for(int i=0; i<a.size(); i++){
t = a[i]-t;
if(i<b.size()) t-=b[i];
c.push_back((t+10)%10);
if(t<0) t=1; else t=0;
}
while(c.size()>1 && c.back()==0) c.pop_back();
reverse(c.begin(),c.end());
return c;
}
// return a>=b;
bool cmp(vector<int>&a,vector<int>&b){
if(a.size()!=b.size()) return a.size()>b.size();
for(int i=0; i<a.size(); i++){
if(a[i]!=b[i]) return a[i]>b[i];
}
return 1;
}
// return a*b;
vector<int> mul(vector<int>&a,int&b){
reverse(a.begin(),a.end());
vector<int> c; int t=0;
for(int i=0; i<a.size()||t; i++){
if(i<a.size()) t += a[i]*b;
c.push_back(t%10);
t/=10;
}
while(c.size()>1 && c.back()==0) c.pop_back();
reverse(c.begin(),c.end());
return c;
}
// return a/b, r=a%b
vector<int> div(vector<int>&a,int&b,int &r){
vector<int> c; r=0;
for(int i=0; i<a.size(); i++){
r = r*10+a[i];
c.push_back(r/b);
r %= b;
}
reverse(c.begin(),c.end());
while(c.size()>1 &&c.back()==0) c.pop_back();
reverse(c.begin(),c.end());
return c;
}
int main(){
string a; int b; cin>>a>>b;
vector<int> va,vb,vc;
for(int i=0; i<a.size(); i++) va.push_back(a[i]-'0');
int r;
vc=div(va,b,r);
for(auto u:vc) cout<<u; cout<<endl<<r;
}
高精度计算_vector的更多相关文章
- php-浮点数计算,double类型数加减乘除必须用PHP提供的高精度计算函数
一.前方有坑 php在使用加减乘除等运算符计算浮点数的时候,经常会出现意想不到的结果,特别是关于财务数据方面的计算,给不少工程师惹了很多的麻烦.比如今天工作终于到的一个案例: $a = 2586; $ ...
- 使用高精度计算斐波那契数列 c++
使用高精度计算斐波那契数列 非高精度 Code(Non-high accuracy) 这是不用高精度的代码 #include<bits/stdc++.h> using namespace ...
- cb15a_c++_vector容器的自增长_每次增加百分之50
cb15a_c++_vector容器的自增长_每次增加百分之50每次自动容量代销扩充,增加百分之50_for windows C++,vector是用数组做出来的->数组的缺点和优点优点:具有下 ...
- 1169A+B问题终结版(高精度计算)
描述 给定两个整数A和B,输出A+B的值.A和B的值可能会很大很大,甚至达到100位.现在请你解决这一问题. 输入 两行,分别是两个整数A,B,换行隔开.A和B会很大很大. 输出 一个整数,即A+B的 ...
- C++_系列自学课程_第_5_课_vector容器_《C++ Primer 第四版》
再一次遇到 vector 这个单词; 每一次见到这个单词都感觉这个单词非常的 "高大上"; 数字遇到vector马上就可以360度旋转: 当 "电" 遇到vec ...
- C++高精度计算代码运行时间(转载)
转载:http://blog.csdn.net/rrrfff/article/details/6583410 //在定时前应该先调用QueryPerformanceFrequency()函数获得机器内 ...
- 高精度计算的类(BigInteger和BigDecimal)
这两个类 在Java中没有对应的基本类型.不过,这两个类包含的方法,提供的操作与对基本类型所能执行的操作差不多. 也就是说,能对基本类型 int float 等的操作,也同样能作用于这两个类,只不过必 ...
- 华为机试_字符串识别_Vector的使用;
第一题:拼音转数字输入是一个只包含拼音的字符串,请输出对应的数字序列.转换关系如下:描述: 拼音 yi er san si wu liu qi ba jiu ...
- HDU 1042 N!(高精度计算阶乘)
N! Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submiss ...
- uva424 高精度计算
题意是计算各长整数的和,最多输入100个数,每个数都是正整数且位数不超过100. 很明显100位的数用数组存会方便许多,然后设置两个整型数组,一个存进位,一个存结果.为了对齐进行运算,我将所有的数先逆 ...
随机推荐
- Nacos安装与启动
一.官网下载 1. 地址 https://github.com/alibaba/nacos/releases 二.安装 将下载的安装包解压至非中文目录即可,解压后目录: bin 目录下有启动脚本, ...
- error:0308010C:digital envelope routines::unsupported
Node.js v18.14.1 运行项目 node:internal/crypto/hash:71 this[kHandle] = new _Hash(algorithm, xofLen); ^ E ...
- TPS,RPS,QPS,RT的区别
以下是对性能中各项指标的解释: 1.TPS:Transaction Per Second,服务器每秒处理事务数,是衡量系统性能的一个非常重要的指标. 计算公式:TPS= 总请求数 / 总时间. ...
- CF14D题解
CF14D Two Paths题解 题目链接 传送门 题意简述 给定一棵树,找出两条不经过相同点的最长路径,使得他们的长度乘积最大. 题目分析 首先,如果在一棵树上,两条路径没有共同的点,那么这两条路 ...
- python官方文档:https://pypi.org/
https://pypi.org/ Find, install and publish Python packages with the Python Package Index
- JS日期时间增加减少
new Date().add(Date.MONTH, +3).format('Y-m-d') // 加三个月 new Date().add(Date.MONTH, -3).format('Y-m-d ...
- MYSQL --存储引擎的对比
主要介绍三种 InnoDB .MyISAM .Memory 一.InnoDB 介绍: InnoDB是一种兼顾高可靠性和高性能的通用存储引擎,在MySQL5.5之后默认的存储引擎 特点: DML操作遵循 ...
- pg9.6查询优化
目录 1 样例数据集 2 explain基础 3 执行计划节点结构 3.1 基本代价计算 3.2 执行计划格式输出 4 组装行集合 4.1 扫描方式 4.2 处理节点 1 样例数据集 wget htt ...
- CTF学习笔记(三)php部分
三.常见PHP用法与漏洞 (〇)php的备份文件与phps php的备份文件一般是*.php.bak,在根目录下输入/index.php.bak, 下载 备份文件. phps文件就是php的源代码文件 ...
- uni-app学习笔记之----传参、通讯
1.页面传参 父级页面传递参数到详情页: 详情页得到参数: 打印: 2.组件通信 (1)子组件---->父组件:$emit() (2)父组件---->子组件:props (3)兄弟组件: ...