• POJ 1504 Adding Reversed Numbers (水题,高精度整数加法)


    题意:给两个整数,求这两个数的反向数的和的反向数,和的末尾若为0,反向后则舍去即可。即若1200,反向数为21。题目给出的数据的末尾不会出现0,但是他们的和的末尾可能会出现0。

    #include <iostream>
    #include <string.h>
    #include <stdio.h>
    #include <string>
    #include <string.h>
    using namespace std;
    int n1,n2;//n1表示a的位数,n2表示b的位数
    int a[100],b[100];
    void add() {
        for(int i=0; i<(n1>n2?n1:n2); i++) {
            a[i]=a[i]+b[i];
            if(a[i]>9) {
                a[i]-=10;
                a[i+1]++;
            }
        }
    }
    int main() {
        int t;
        char s1[100],s2[100];
        scanf("%d",&t);
        while(t--){
            scanf("%s%s",s1,s2);
            memset(a,0,sizeof(a));
            memset(b,0,sizeof(b));
            n1=strlen(s1);
            n2=strlen(s2);
            for(int i=0;i<n1;i++){
                a[i]=s1[i]-'0';
            }
            for(int i=0;i<n2;i++){
                b[i]=s2[i]-'0';
            }
            add();
            //right表示反向数的和的最右端第一个不是0的位置
            int right=0;
            while(1){
                if(a[right]==0)
                    right++;
                else
                    break;
            }
            int left=n1+n2;
            //left表示反向数的和的最左端第一个不是0的位置
            while(1){
                if(a[left]==0)
                    left--;
                else
                    break;
            }
            //反向输出
            for(int i=right;i<=left;i++)
                printf("%d",a[i]);
            printf("
    ");
        }
        return 0;
    }
  • 相关阅读:
    hive 查询结果导入到hdfs中 row format 报错
    每日一python
    关于setuptools的版本问题
    数据库的索引
    hadoop5--mapreduce设计模式
    hadoop4--深入mapreduce
    hadoop3--编写简单的map reduce
    hadoop学习2----HDFS操作
    Git-5
    鸟哥的linux私房菜学习笔记 ---第8章-1
  • 原文地址:https://www.cnblogs.com/chenxiwenruo/p/3327941.html
Copyright © 2020-2023  润新知