首页 > 其他分享 >w2-4 高精度减法

w2-4 高精度减法

时间:2023-04-19 21:12:57浏览次数:38  
标签:高精度 int number long w2 pd 减法 size

#include <iostream>
#include <string>

using namespace std;
int sum[50000];
int main()
{
    string a,b;
    long long x,y;
    cin>>a>>b;
    int jug=0,pd=0;
    if((a < b && a.size() == b.size()) || a.size() < b.size())//the key point, change the positive number to the negative number
    {
        swap(a, b);
        pd = 1;
    }
    x=a.length();
    y=b.length();
    for(long long i=0;i<x;++i){//specially,if(a=b),print"0"
        if(a[i]!=b[i]) jug=1;
    }
    if(!jug) cout<<'0';
    for(long long i=0;i<x;i++) sum[x-i-1]+=a[i]-'0';
    for(long long i=0;i<y;i++) sum[y-1-i]-=b[i]-'0';
    long long len=max(x,y);//len不精准但一定够大
    for(long long i=0;i<len;i++){
        if(sum[i]<0){//处理退位
            sum[i+1]--;
            sum[i]+=10;
        }
    }
    int judge=0;
    if(pd) cout<<'-';//负数加符号
    for(long long i=0;i<len;i++){//erase the extra zero
        if(sum[len-i-1]||judge){
            cout<<sum[len-i-1];一旦有非0了说明后面的0就可以输出
            judge=1;
        }
    }
    return 0;
}

标签:高精度,int,number,long,w2,pd,减法,size
From: https://www.cnblogs.com/lijunjie03/p/17334638.html

相关文章

  • 高精度加法、减法、乘法【自存】
    预处理intMax_len;//最多可能的位数stringa,b;voidinit(){cin>>a>>b;Max_len=500;//intind=Max_len,i=a.size()-1;while(i>=0){ans[ind]=a[i]-'0';ind--;i--;}in......
  • MATLAB:基于概率距离快速削减法的风光场景生成与削减方法
    风光场景生成场景削减概率距离削减法蒙特卡洛法MATLAB:基于概率距离快速削减法的风光场景生成与削减方法参考文档:《含风光水的虚拟电厂与配电公司协调调度模型》完全复现场景削减部分仿真平台:MATLAB平台 代码具有一定的深度和创新性,注释清晰主要内容:风电、光伏以及电价场......
  • 在有限 computational budget 下,借助 low-fidelity 模型提高精度
    论文名称:context-awarelearningofhierarchiesoflow-fidelitymodelsformulti-fidelityuncertaintyquantification链接:https://www.sciencedirect.com/science/article/pii/S0045782523000312国际计算力学领域的顶级期刊《ComputerMethodsinAppliedMechanicsand......
  • SGU 200 Cracking RSA (高斯消元+大数高精度)
    题目地址:SGU200这题居然还考大数高精度。。无语。。令有该因子偶数个为0,奇数个为1,这样就满足异或运算了,即奇+奇=偶,偶+偶=偶,奇+偶=奇。然后建立方程高斯消元求变元个数free_num,那么子集的个数就是2^free_num-1。减1是去掉0的情况。注意要用大数运算代码如下:#include<iostream>#in......
  • UVa 11375 Matches (DP&高精度)
    11375-MatchesTimelimit:2.000secondshttp://uva.onlinejudge.org/index.php?option=onlinejudge&page=show_problem&problem=2370Wecanmakedigitswithmatchesasshownbelow:Given N matches,findthenumberofdifferentnumbersrepresentableusing......
  • 基于概率距离快速削减法的风光场景生成与削减方法
    基于概率距离快速削减法的风光场景生成与削减方法关键词:风光场景生成场景削减概率距离削减法蒙特卡洛法参考文档:《含风光水的虚拟电厂与配电公司协调调度模型》完全复现场景削减部分仿真平台:MATLAB平台主要内容:代码主要做的是风电、光伏以及电价场景不确定性模拟,首先由一组......
  • w2 P1008 [NOIP1998 普及组] 三连击
      主要思路:构造一个judge函数,判断是否1-9都出现了。由于三位数范围为123-987,但因为要求三个数字比例为1:2:3,所以在遍历时的范围是123-987/3。遍历范围内的每一个整数x,并判断2x,3x是否满足judge函数,满足则输出这三个数,否则继续遍历。代码如下:#include<iostream>usingnamespac......
  • 事实胜于雄辩,苹果MacOs能不能玩儿机器/深度(ml/dl)学习(Python3.10/Tensorflow2)
    坊间有传MacOs系统不适合机器(ml)学习和深度(dl)学习,这是板上钉钉的刻板印象,就好像有人说女生不适合编程一样的离谱。现而今,无论是Pytorch框架的MPS模式,还是最新的Tensorflow2框架,都已经可以在M1/M2芯片的Mac系统中毫无桎梏地使用GPU显卡设备,本次我们来分享如何在苹果MacOS系统上......
  • 高精度加法C++
    #include<iostream>#include<vector>usingnamespacestd;vector<int>Add(vector<int>&A,vector<int>&B){vector<int>C;intt=0;for(inti=0;i<A.size()||i<B.size();i++){if(i<A.size(......
  • C++ MFC中嵌入web网页控件(WebBrowser、WebView2、CEF3)
    1、简介WebBrowser控件最常见的用途之一是向应用程序添加Internet浏览功能。使用IWebBrowser2接口,可以浏览到本地文件系统、网络或万维网上的任何位置。可以使用IWebBrowser2::Navigate方法告知控件要浏览到哪个位置。第一个参数是包含位置名称的字符串。要浏览到本地文件系......