zoukankan      html  css  js  c++  java
  • 高精度加法

    (快考试了,复习下)

     1 #include<cstdio>
     2 #include<cstring>
     3 #include<algorithm>
     4 #include<iostream>
     5 //此处的高精加不考虑负数
     6 using namespace std;
     7 struct bignum{
     8     int y[50005];//第0位存size 
     9     //全部为倒存(节省点常数)
    10     bignum()
    11         {memset(y,0,sizeof(y));} 
    12     bignum operator + (const bignum x) const
    13     {
    14         bignum re;
    15         re.y[0]=max(y[0],x.y[0]);
    16         for(int i=1;i<=re.y[0];i++)
    17         {
    18             re.y[i]+=y[i]+x.y[i];
    19             while(re.y[i]>9) re.y[i]-=10,re.y[i+1]+=1;
    20         }
    21         while(re.y[re.y[0]+1]) re.y[0]++;
    22         return re;
    23     }
    24 }; 
    25 string b1,b2;
    26 bignum q,w,c;
    27 int main()
    28 {
    29     cin>>b1>>b2;
    30     q.y[0]=b1.size(),w.y[0]=b2.size();
    31     for(int i=0;i<q.y[0];i++) q.y[i+1]=b1[i]-'0';
    32     for(int i=0;i<w.y[0];i++) w.y[i+1]=b2[i]-'0';
    33     reverse(q.y+1,q.y+1+q.y[0]);
    34     reverse(w.y+1,w.y+1+w.y[0]);
    35     c=q+w;
    36     reverse(c.y+1,c.y+1+c.y[0]);
    37     for(int i=1;i<=c.y[0];i++) printf("%d",c.y[i]);
    38     return 0;
    39 } 
    View Code
  • 相关阅读:
    java 字符流
    大兴安岭300余幅岩画得到及时保护
    [Hive]-Table
    [Hive]-DataBase
    [Hive]-列式存储篇
    [Hive]-架构篇
    [Hive]编译部署-hive-1.1.0-cdh5.7.0
    [Hadoop]-MapReduce-使用篇
    [Hadoop]MapReduce-架构篇
    [Hadoop]-常用命令
  • 原文地址:https://www.cnblogs.com/shzyk/p/9788849.html
Copyright © 2011-2022 走看看