zoukankan      html  css  js  c++  java
  • joj 1189

     大数,题目有点误解人。。。明明说VeryLongInteger但运算的却不是数字而是文本行

    #include<iostream>
    #include<stdio.h>
    using namespace std;
    char str1[1000005],str2[105];
    int main()
    {
        scanf("%s",str1);
        while(scanf("%s",str2),strcmp(str2,"0")!=0)
        {
             int len1,len2,i=0;
             while(str1[i]!='\0')
                 i++;
             len1=i;
             i=0;
             while(str2[i]!='\0')
                 i++;
             len2=i;
             if(len1==len2)
             {
                 int i=len1-1;
                 int c=0;
                 while(i>=0)
                 {
                    
                     int m=c+str2[i]-'0'+str1[i]-'0';
                     str2[i]=m%10+'0';
                     c=m/10;
                     i--;
                 }
                 if(c>0)
                 {
                    str1[0]=c+'0';
                    strcpy(str1+1,str2);
                 }
                 else
                    strcpy(str1,str2);
             }
             else if(len1<len2)
             {
                 int i=len1-1;
                 int c=0;
                 int q=len2-len1;
                 while(i>=0)
                 {
                    
                     int m=c+str2[i+q]-'0'+str1[i]-'0';
                     str2[i+q]=m%10+'0';
                     c=m/10;
                     i--;
                 }
                 q--;
                 while(c&&q>=0)
                 {
                     int m=c+str2[q]-'0';
                     str2[q]=m%10+'0';
                     c=m/10;
                     q--;
                 }
                 if(c>0)
                 {
                    str1[0]=c+'0';
                    strcpy(str1+1,str2);
                 }
                 else
                    strcpy(str1,str2);
             }
             else if(len1>len2)
             {
                 int i=len2-1;
                 int c=0;
                 int q=len1-len2;
                 while(i>=0)
                 {
                    
                     int m=c+str1[i+q]-'0'+str2[i]-'0';
                     str1[i+q]=m%10+'0';
                     c=m/10;
                     i--;
                 }
                 q--;
                 while(c&&q>=0)
                 {
                     int m=c+str1[q]-'0';
                     str1[q]=m%10+'0';
                     c=m/10;
                     q--;
                 }
                 if(c>0)
                 {
                    strcpy(str2,str1);
                    str1[0]=c+'0';
                    strcpy(str1+1,str2);
                 }
             }
        }
        printf("%s\n",str1);
       
    }


     

  • 相关阅读:
    为什么今日头条是技术牛人收割机(FW)
    独家|浅谈用户行为数据的价值挖掘(PPT)(FW)
    深度学习笔记
    "堕落"的头条,还是"不堪"的民众?
    理解传统企业的问题与困惑
    人工智能在医疗领域究竟要怎么玩?(FW)
    佟崴嵬
    youtube true view的逻辑
    AI第一性原理
    域对象的属性和请求的转发重定向
  • 原文地址:https://www.cnblogs.com/dchipnau/p/4985937.html
Copyright © 2011-2022 走看看