ZZNU 2125:A + B 普拉斯(傻逼题+大数加法)

2125: A + B 普拉斯

时间限制: 1 Sec  内存限制: 128 MB
提交: 94  解决: 28
[提交] [状态] [讨论版] [命题人:admin]

题目描述

“别人总说我瓜,其实我一点也不瓜,大多数时候我都机智的一批


机智如宝儿姐,在处理大数加法时也需要借助计算器。
在计算机中,数字是通过像01像素矩阵来显示的,最终的显示效果如下: 
 
现在我们用01来构成这些数字

当宝儿姐输入A + B 时(log10(A)<50,log10(B)<50,且A,B均为正整数),你来计算A+B的和C,并按格式在屏幕上打印C。

输入

每组输入包括两个非负整数 A,B(log10(A)<50,log10(B)<50),已EOF结束输入 

输出

按格式在屏幕中打印C,数字之间相隔三列0。 

样例输入

3 8

样例输出
0010000000100

0110000001100

0010000000100

0010000000100

0010000000100

0010000000100

0111000001110

题意

大数加法,用01矩阵输出数字的图形


强烈谴责ZZNU这种题意描述不完全,样例给的不充分,后台数据XJB给的行为!!!!!!!!你后台数据不去前缀0好歹说一下呀!!!或者像HDU那样有没有前缀0都算对呀!!!因为这个SB题500行暴力代码WA10次!!!!!

好了,不用往下看了,就是一个大数加法不去前缀0的代码。以下是精简后的代码

#include <bits/stdc++.h>
#define ll long long
#define ms(a) memset(a,0,sizeof(a))
#define pi acos(-1.0)
#define INF 0x3f3f3f3f
const double E=exp(1);
const int maxn=1e3+10;
char num1[maxn],num2[maxn];
int a[maxn],b[maxn];
int c[maxn];
int ans[maxn];
struct wzy
{
    char a1[maxn],a2[maxn],a3[maxn],a4[maxn],a5[maxn],a6[maxn],a7[maxn];
}p;
int main()
{
    while(scanf("%s %s",num1,num2)!=EOF)
    {
        int i;
        int sum;
        ms(a);
        ms(b);
        ms(c);
        ms(p.a1);
        ms(p.a2);
        ms(p.a3);
        ms(p.a4);
        ms(p.a5);
        ms(p.a6);
        ms(p.a7);
        int l1=strlen(num1);
        int l2=strlen(num2);
        for(i=0;i<l1;i++) a[i]=num1[l1-1-i]-'0';
        for(i=0;i<l2;i++) b[i]=num2[l2-1-i]-'0';//字符串转换成数字
        int ml=std::max(l1,l2);//找到最长的字符串长度 
        for(sum=0,i=0;i<ml;i++)
        {
            c[i]=(a[i]+b[i]+sum)%10;
            sum=(a[i]+b[i]+sum)/10;
        }
        if(sum) c[ml]=1;
        int cnt=0;
        if(c[ml]==1)
        {
            ans[cnt++]=1;
        }
        int flag=0;
        for(i=ml-1;i>=0;i--)
        {
                ans[cnt++]=c[i];
        }
        int k=0,k1=0,k2=0,k3=0,k4=0,k5=0,k6=0;
        for(i=0;i<cnt;i++)
        {
            if(i!=0)
            {
                p.a1[k++]='0';
                p.a1[k++]='0';
                p.a1[k++]='0';
                p.a2[k1++]='0';
                p.a2[k1++]='0';
                p.a2[k1++]='0';
                p.a3[k2++]='0';
                p.a3[k2++]='0';
                p.a3[k2++]='0';
                p.a4[k3++]='0';
                p.a4[k3++]='0';
                p.a4[k3++]='0';
                p.a5[k4++]='0';
                p.a5[k4++]='0';
                p.a5[k4++]='0';
                p.a6[k5++]='0';
                p.a6[k5++]='0';
                p.a6[k5++]='0';
                p.a7[k6++]='0';
                p.a7[k6++]='0';
                p.a7[k6++]='0';
            }
            if(ans[i]==0)
            {
                p.a1[k++]='0';
                p.a1[k++]='1';
                p.a1[k++]='1';
                p.a1[k++]='1';
                p.a1[k++]='0';
                p.a2[k1++]='1';
                p.a2[k1++]='0';
                p.a2[k1++]='0';
                p.a2[k1++]='0';
                p.a2[k1++]='1';
                p.a3[k2++]='1';
                p.a3[k2++]='0';
                p.a3[k2++]='0';
                p.a3[k2++]='1';
                p.a3[k2++]='1';
                p.a4[k3++]='1';
                p.a4[k3++]='0';
                p.a4[k3++]='1';
                p.a4[k3++]='0';
                p.a4[k3++]='1';
                p.a5[k4++]='1';
                p.a5[k4++]='1';
                p.a5[k4++]='0';
                p.a5[k4++]='0';
                p.a5[k4++]='1';
                p.a6[k5++]='1';
                p.a6[k5++]='0';
                p.a6[k5++]='0';
                p.a6[k5++]='0';
                p.a6[k5++]='1';
                p.a7[k6++]='0';
                p.a7[k6++]='1';
                p.a7[k6++]='1';
                p.a7[k6++]='1';
                p.a7[k6++]='0';
            }
            if(ans[i]==1)
            {
                p.a1[k++]='0';
                p.a1[k++]='0';
                p.a1[k++]='1';
                p.a1[k++]='0';
                p.a1[k++]='0';
                p.a2[k1++]='0';
                p.a2[k1++]='1';
                p.a2[k1++]='1';
                p.a2[k1++]='0';
                p.a2[k1++]='0';
                p.a3[k2++]='0';
                p.a3[k2++]='0';
                p.a3[k2++]='1';
                p.a3[k2++]='0';
                p.a3[k2++]='0';
                p.a4[k3++]='0';
                p.a4[k3++]='0';
                p.a4[k3++]='1';
                p.a4[k3++]='0';
                p.a4[k3++]='0';
                p.a5[k4++]='0';
                p.a5[k4++]='0';
                p.a5[k4++]='1';
                p.a5[k4++]='0';
                p.a5[k4++]='0';
                p.a6[k5++]='0';
                p.a6[k5++]='0';
                p.a6[k5++]='1';
                p.a6[k5++]='0';
                p.a6[k5++]='0';
                p.a7[k6++]='0';
                p.a7[k6++]='1';
                p.a7[k6++]='1';
                p.a7[k6++]='1';
                p.a7[k6++]='0';
            }
            if(ans[i]==2)
            {
                p.a1[k++]='0';
                p.a1[k++]='1';
                p.a1[k++]='1';
                p.a1[k++]='1';
                p.a1[k++]='0';
                p.a2[k1++]='1';
                p.a2[k1++]='0';
                p.a2[k1++]='0';
                p.a2[k1++]='0';
                p.a2[k1++]='1';
                p.a3[k2++]='0';
                p.a3[k2++]='0';
                p.a3[k2++]='0';
                p.a3[k2++]='0';
                p.a3[k2++]='1';
                p.a4[k3++]='0';
                p.a4[k3++]='0';
                p.a4[k3++]='1';
                p.a4[k3++]='1';
                p.a4[k3++]='0';
                p.a5[k4++]='0';
                p.a5[k4++]='1';
                p.a5[k4++]='0';
                p.a5[k4++]='0';
                p.a5[k4++]='0';
                p.a6[k5++]='1';
                p.a6[k5++]='0';
                p.a6[k5++]='0';
                p.a6[k5++]='0';
                p.a6[k5++]='0';
                p.a7[k6++]='1';
                p.a7[k6++]='1';
                p.a7[k6++]='1';
                p.a7[k6++]='1';
                p.a7[k6++]='1';
            }
            if(ans[i]==3)
            {
                p.a1[k++]='1';
                p.a1[k++]='1';
                p.a1[k++]='1';
                p.a1[k++]='1';
                p.a1[k++]='1';
                p.a2[k1++]='0';
                p.a2[k1++]='0';
                p.a2[k1++]='0';
                p.a2[k1++]='0';
                p.a2[k1++]='1';
                p.a3[k2++]='0';
                p.a3[k2++]='0';
                p.a3[k2++]='0';
                p.a3[k2++]='1';
                p.a3[k2++]='0';
                p.a4[k3++]='0';
                p.a4[k3++]='0';
                p.a4[k3++]='1';
                p.a4[k3++]='1';
                p.a4[k3++]='0';
                p.a5[k4++]='0';
                p.a5[k4++]='0';
                p.a5[k4++]='0';
                p.a5[k4++]='0';
                p.a5[k4++]='1';
                p.a6[k5++]='1';
                p.a6[k5++]='0';
                p.a6[k5++]='0';
                p.a6[k5++]='0';
                p.a6[k5++]='1';
                p.a7[k6++]='0';
                p.a7[k6++]='1';
                p.a7[k6++]='1';
                p.a7[k6++]='1';
                p.a7[k6++]='0';
            }
            if(ans[i]==4)
            {
                p.a1[k++]='0';
                p.a1[k++]='0';
                p.a1[k++]='0';
                p.a1[k++]='1';
                p.a1[k++]='0';
                p.a2[k1++]='0';
                p.a2[k1++]='0';
                p.a2[k1++]='1';
                p.a2[k1++]='1';
                p.a2[k1++]='0';
                p.a3[k2++]='0';
                p.a3[k2++]='1';
                p.a3[k2++]='0';
                p.a3[k2++]='1';
                p.a3[k2++]='0';
                p.a4[k3++]='1';
                p.a4[k3++]='0';
                p.a4[k3++]='0';
                p.a4[k3++]='1';
                p.a4[k3++]='0';
                p.a5[k4++]='1';
                p.a5[k4++]='1';
                p.a5[k4++]='1';
                p.a5[k4++]='1';
                p.a5[k4++]='1';
                p.a6[k5++]='0';
                p.a6[k5++]='0';
                p.a6[k5++]='0';
                p.a6[k5++]='1';
                p.a6[k5++]='0';
                p.a7[k6++]='0';
                p.a7[k6++]='0';
                p.a7[k6++]='0';
                p.a7[k6++]='1';
                p.a7[k6++]='0';
            }
            if(ans[i]==5)
            {
                p.a1[k++]='1';
                p.a1[k++]='1';
                p.a1[k++]='1';
                p.a1[k++]='1';
                p.a1[k++]='1';
                p.a2[k1++]='1';
                p.a2[k1++]='0';
                p.a2[k1++]='0';
                p.a2[k1++]='0';
                p.a2[k1++]='0';
                p.a3[k2++]='1';
                p.a3[k2++]='0';
                p.a3[k2++]='0';
                p.a3[k2++]='0';
                p.a3[k2++]='0';
                p.a4[k3++]='1';
                p.a4[k3++]='1';
                p.a4[k3++]='1';
                p.a4[k3++]='1';
                p.a4[k3++]='0';
                p.a5[k4++]='0';
                p.a5[k4++]='0';
                p.a5[k4++]='0';
                p.a5[k4++]='0';
                p.a5[k4++]='1';
                p.a6[k5++]='0';
                p.a6[k5++]='0';
                p.a6[k5++]='0';
                p.a6[k5++]='0';
                p.a6[k5++]='1';
                p.a7[k6++]='1';
                p.a7[k6++]='1';
                p.a7[k6++]='1';
                p.a7[k6++]='1';
                p.a7[k6++]='0';
            }
            if(ans[i]==6)
            {
                p.a1[k++]='0';
                p.a1[k++]='1';
                p.a1[k++]='1';
                p.a1[k++]='1';
                p.a1[k++]='1';
                p.a2[k1++]='1';
                p.a2[k1++]='0';
                p.a2[k1++]='0';
                p.a2[k1++]='0';
                p.a2[k1++]='0';
                p.a3[k2++]='1';
                p.a3[k2++]='0';
                p.a3[k2++]='0';
                p.a3[k2++]='0';
                p.a3[k2++]='0';
                p.a4[k3++]='1';
                p.a4[k3++]='1';
                p.a4[k3++]='1';
                p.a4[k3++]='1';
                p.a4[k3++]='0';
                p.a5[k4++]='1';
                p.a5[k4++]='0';
                p.a5[k4++]='0';
                p.a5[k4++]='0';
                p.a5[k4++]='1';
                p.a6[k5++]='1';
                p.a6[k5++]='0';
                p.a6[k5++]='0';
                p.a6[k5++]='0';
                p.a6[k5++]='1';
                p.a7[k6++]='0';
                p.a7[k6++]='1';
                p.a7[k6++]='1';
                p.a7[k6++]='1';
                p.a7[k6++]='0';
            }
            if(ans[i]==7)
            {
                 
                p.a1[k++]='1';
                p.a1[k++]='1';
                p.a1[k++]='1';
                p.a1[k++]='1';
                p.a1[k++]='1';
                p.a2[k1++]='0';
                p.a2[k1++]='0';
                p.a2[k1++]='0';
                p.a2[k1++]='0';
                p.a2[k1++]='1';
                p.a3[k2++]='0';
                p.a3[k2++]='0';
                p.a3[k2++]='0';
                p.a3[k2++]='1';
                p.a3[k2++]='0';
                p.a4[k3++]='0';
                p.a4[k3++]='0';
                p.a4[k3++]='1';
                p.a4[k3++]='0';
                p.a4[k3++]='0';
                p.a5[k4++]='0';
                p.a5[k4++]='0';
                p.a5[k4++]='1';
                p.a5[k4++]='0';
                p.a5[k4++]='0';
                p.a6[k5++]='0';
                p.a6[k5++]='0';
                p.a6[k5++]='1';
                p.a6[k5++]='0';
                p.a6[k5++]='0';
                p.a7[k6++]='0';
                p.a7[k6++]='0';
                p.a7[k6++]='1';
                p.a7[k6++]='0';
                p.a7[k6++]='0';
            }
            if(ans[i]==8)
            {
                p.a1[k++]='0';
                p.a1[k++]='1';
                p.a1[k++]='1';
                p.a1[k++]='1';
                p.a1[k++]='0';
                p.a2[k1++]='1';
                p.a2[k1++]='0';
                p.a2[k1++]='0';
                p.a2[k1++]='0';
                p.a2[k1++]='1';
                p.a3[k2++]='1';
                p.a3[k2++]='0';
                p.a3[k2++]='0';
                p.a3[k2++]='0';
                p.a3[k2++]='1';
                p.a4[k3++]='0';
                p.a4[k3++]='1';
                p.a4[k3++]='1';
                p.a4[k3++]='1';
                p.a4[k3++]='0';
                p.a5[k4++]='1';
                p.a5[k4++]='0';
                p.a5[k4++]='0';
                p.a5[k4++]='0';
                p.a5[k4++]='1';
                p.a6[k5++]='1';
                p.a6[k5++]='0';
                p.a6[k5++]='0';
                p.a6[k5++]='0';
                p.a6[k5++]='1';
                p.a7[k6++]='0';
                p.a7[k6++]='1';
                p.a7[k6++]='1';
                p.a7[k6++]='1';
                p.a7[k6++]='0';
            }
            if(ans[i]==9)
            {
                 
 
                p.a1[k++]='0';
                p.a1[k++]='1';
                p.a1[k++]='1';
                p.a1[k++]='1';
                p.a1[k++]='0';
                p.a2[k1++]='1';
                p.a2[k1++]='0';
                p.a2[k1++]='0';
                p.a2[k1++]='0';
                p.a2[k1++]='1';
                p.a3[k2++]='1';
                p.a3[k2++]='0';
                p.a3[k2++]='0';
                p.a3[k2++]='0';
                p.a3[k2++]='1';
                p.a4[k3++]='0';
                p.a4[k3++]='1';
                p.a4[k3++]='1';
                p.a4[k3++]='1';
                p.a4[k3++]='1';
                p.a5[k4++]='0';
                p.a5[k4++]='0';
                p.a5[k4++]='0';
                p.a5[k4++]='0';
                p.a5[k4++]='1';
                p.a6[k5++]='0';
                p.a6[k5++]='0';
                p.a6[k5++]='0';
                p.a6[k5++]='1';
                p.a6[k5++]='0';
                p.a7[k6++]='1';
                p.a7[k6++]='1';
                p.a7[k6++]='1';
                p.a7[k6++]='0';
                p.a7[k6++]='0';
            }
        }
        puts(p.a1);
        puts(p.a2);
        puts(p.a3);
        puts(p.a4);
        puts(p.a5);
        puts(p.a6);
        puts(p.a7);
    }
    return 0;
}
 
/**************************************************************
    Problem: 2125
    User: wzy1999
    Language: C++
    Result: 正确
    Time:0 ms
    Memory:2052 kb
****************************************************************/
原文地址:https://www.cnblogs.com/Friends-A/p/10324426.html