高精度计算_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位的数用数组存会方便许多,然后设置两个整型数组,一个存进位,一个存结果.为了对齐进行运算,我将所有的数先逆 ...
随机推荐
- 常用的基础方法,对象转数组,phpcurl请求
/** * CURL方法 * @param type $url * @param type $https * @param type $method * @param type $data * @re ...
- 初识swoole
环境: 腾讯云服务器 centos7 在安装完swoole服务之后 使用 php -m 查看是否有该组件 确认存在后 在根目录下 创建一个文件夹 当做专门测试swoole使用 如 8 在该文件夹下 ...
- C# 调用Web Api通用方法
1.通用方法 public class GetDataByWebApi { /// <summary> /// 通过web api获取数据的方法 /// </summary> ...
- 【SSO单点系列】(4):CAS4.0 之非Ajax-iframe 登录
一.描述 不使用Ajax-iframe 登录 仍然要自定义页面 二.思路: 将数据提交给服务器登录页面,服务登录页面自动提交. 三.实现 1.客户端 <form name="login ...
- 【SSO单点系列】(3):CAS4.0 之自定义返回登出页面
一.登出实现返回自定义页面 服务端修改 cas-servlet.xml <bean id="logoutAction" class="org.jasig.cas.w ...
- SQL server自动创建日历表。
做日报功能需要统计每个月的上班天数,节假日因为每年的日期都不一样,所以需要自己手动更新这些节假日 1:首先先自动创建一个日历表,选择开始年月日和结束的年月日 不要同时执行,先执行创建表之后CREATE ...
- [洛谷/题目] P1562 还是N皇后
声明 关于科学道理都会放进代码中,但是我们需要先了解一下位运算解这道题目的基础知识 我不是很会专业词语,所以仅介绍原理 位运算基础 众所周知,二进制是0和1 2^3 2^2 2^1 2^0 8 4 2 ...
- WOW事件大全(翻译对照)
魔兽世界(WOW)插件开发事件大全 ACHIEVEMENT_EARNED 取得的成就 ACHIEVEMENT_SEARCH_UPDATED 已更新成就搜索 ACTIONBAR_HIDEGRID 动作条 ...
- css可继承与不可继承的属性
一.可继承性的属性 字体相关的:font-size/font-family/font-weight/font-style/font-variant/font-stretch 文本相关的:color/t ...
- Jmeter学习:字符串,加密相关函数,groovy脚本函数
一.__digest 功能介绍: 将输入进行 MD5 加密 ${__MD5(参数 1,参数 2)} 参数 1:加密算法,必选,MD2 MD5 SHA-1 SHA-224 SHA-256 SHA-384 ...