zoukankan      html  css  js  c++  java
  • HDU 1047 Integer Inquiry

    解题报告:本题就是用数组模拟大数的相加,输入的第一行是一个n,表示有n组测试数据,输入有多个大数,输入以0结尾。用数组模拟加法就可以了,编写一个

    add(char *)函数,没输入一次都将对应的位置的值加到和里面去,保存结果的数组应该定义一个int型的数组。而且数组的第一位应该保存呢结果的最高位,这样就可以方便地进行进位,只是记得在输出的时候要倒过来输就可以了。还有一个要注意的是,本题的格式比较坑,表示交了十多次都PE,因为看了disscuss里面一位同学错误的格式,晕,格式只要在输出结果的后面空一行就可以了,但测试数据的最后一组后面不要空行、

    View Code
     1 #include<stdio.h>
     2 #include<string.h>
     3 #include<stdlib.h>
     4 char str[10005];
     5 int sum[10005];
     6 void add(char *Str) {
     7     int len=strlen(Str);
     8     int z=1;
     9     for(int i=len-1;i>=0;--i) {
    10         sum[z]+=(Str[i]-'0');
    11         sum[z+1]+=sum[z]/10;
    12         sum[z]%=10;
    13         z++;
    14     }
    15 }
    16 int main() {
    17     int Case;
    18     scanf("%d",&Case);
    19     while(Case--) {
    20         memset(sum,0,sizeof(sum));
    21         int n=0;
    22         while(scanf("%s",str)&&str[0]!='0')
    23             add(str);
    24         int biaoji=0;
    25         for(int i=10000;i>1;--i)
    26         if(biaoji==0&&sum[i]==0)
    27         continue;
    28         else {
    29             biaoji=1;
    30             printf("%d",sum[i]);
    31         }
    32         printf("%d\n",sum[1]);
    33         if(Case!=0)
    34         printf("\n");
    35     }
    36     return 0;
    37 }
  • 相关阅读:
    VS2008正式版序列号
    清空SQL Server数据库中所有的用户表
    [原创]JavaScript调用Button的服务器端事件
    动态加载枚举 到 DropdownList
    [转载]静态构造函数
    SQL 事务 [两种]
    Jpg文件格式[参考]
    Delegate Event
    javascript 操作cookie类
    [共享]一个文件上传的控件,绝对是精品源码
  • 原文地址:https://www.cnblogs.com/xiaxiaosheng/p/3051433.html
Copyright © 2011-2022 走看看