ZOJ-2831

来源:互联网 发布:matlab生成特殊矩阵 编辑:程序博客网 时间:2024/06/07 16:11

完全的苦力代码题!!!能把A+B搞的这么复杂,真心有才,最麻烦的莫过于把那1-9个数字还有加号挪到代码里的数组里面去了,如果可以读文件来解析的话应该能简单一点,但是对OJ的我不知道怎么搞。。算了还是一点一点抄过去吧,还好一次AC了,嘿嘿200多行代码一次AC的感觉真不错

#include<stdio.h>#include<string.h>int get_number(char s[12][8], char c[8]){    int i;    for (i = 0; i < 10; i++)        if (memcmp(s[i], c, 8 * sizeof(char)) == 0)            return i;    if (memcmp(s[10], c, 8 * sizeof(char)) == 0)        return '+';    else        return ' ';}int main(){    char s[12][8] = { { ' ', 'X', 'X', 'X', 'X', 'X', 'X', ' ' }, { ' ', 'X',                                                                    ' ', ' ',                                                                    ' ', ' ',                                                                    ' ', 'X' },                      { ' ', 'X', 'X', ' ', ' ', ' ', ' ', 'X' }, { ' ', 'X',                                                                    ' ', ' ',                                                                    ' ', ' ',                                                                    'X', ' ' },                      { ' ', ' ', ' ', ' ', 'X', 'X', ' ', ' ' }, { ' ', ' ',                                                                    ' ', ' ',                                                                    ' ', ' ',                                                                    'X', ' ' },                      { ' ', ' ', 'X', 'X', 'X', 'X', 'X', ' ' }, { 'X', 'X',                                                                    ' ', ' ',                                                                    ' ', ' ',                                                                    ' ', ' ' },                      { ' ', 'X', 'X', ' ', 'X', 'X', 'X', ' ' }, { ' ', 'X',                                                                    'X', 'X',                                                                    ' ', ' ',                                                                    ' ', 'X' },                      { ' ', ' ', ' ', ' ', 'X', ' ', ' ', ' ' }, { ' ', ' ',                                                                    ' ', ' ',                                                                    ' ', ' ',                                                                    ' ', ' ' } };    char digit[11][8][8] =            { { { ' ', ' ', 'X', 'X', 'X', 'X', ' ', ' ' }, { ' ', 'X', 'X',                                                              ' ', ' ', 'X',                                                              'X', ' ' },                { ' ', 'X', 'X', ' ', ' ', 'X', 'X', ' ' }, { ' ', 'X', 'X',                                                              ' ', ' ', 'X',                                                              'X', ' ' },                { ' ', 'X', 'X', ' ', ' ', 'X', 'X', ' ' }, { ' ', 'X', 'X',                                                              ' ', ' ', 'X',                                                              'X', ' ' },                { ' ', 'X', 'X', ' ', ' ', 'X', 'X', ' ' }, { ' ', ' ', 'X',                                                              'X', 'X', 'X',                                                              ' ', ' ' } },              { { ' ', ' ', ' ', 'X', 'X', ' ', ' ', ' ' }, { ' ', 'X', 'X',                                                              'X', 'X', ' ',                                                              ' ', ' ' },                { ' ', ' ', ' ', 'X', 'X', ' ', ' ', ' ' }, { ' ', ' ', ' ',                                                              'X', 'X', ' ',                                                              ' ', ' ' },                { ' ', ' ', ' ', 'X', 'X', ' ', ' ', ' ' }, { ' ', ' ', ' ',                                                              'X', 'X', ' ',                                                              ' ', ' ' },                { ' ', ' ', ' ', 'X', 'X', ' ', ' ', ' ' }, { ' ', 'X', 'X',                                                              'X', 'X', 'X',                                                              'X', ' ' } },              { { ' ', ' ', 'X', 'X', 'X', 'X', ' ', ' ' }, { ' ', 'X', 'X',                                                              ' ', ' ', 'X',                                                              'X', ' ' },                { ' ', 'X', 'X', ' ', ' ', 'X', 'X', ' ' }, { ' ', ' ', ' ',                                                              ' ', ' ', 'X',                                                              'X', ' ' },                { ' ', ' ', ' ', ' ', 'X', 'X', ' ', ' ' }, { ' ', ' ', ' ',                                                              'X', 'X', ' ',                                                              ' ', ' ' },                { ' ', ' ', 'X', 'X', ' ', ' ', ' ', ' ' }, { ' ', 'X', 'X',                                                              'X', 'X', 'X',                                                              'X', ' ' } },              { { ' ', ' ', 'X', 'X', 'X', 'X', ' ', ' ' }, { ' ', 'X', ' ',                                                              ' ', ' ', 'X',                                                              'X', ' ' },                { ' ', ' ', ' ', ' ', ' ', 'X', 'X', ' ' }, { ' ', ' ', ' ',                                                              'X', 'X', 'X',                                                              ' ', ' ' },                { ' ', ' ', ' ', ' ', ' ', 'X', 'X', ' ' }, { ' ', ' ', ' ',                                                              ' ', ' ', 'X',                                                              'X', ' ' },                { ' ', 'X', ' ', ' ', ' ', 'X', 'X', ' ' }, { ' ', ' ', 'X',                                                              'X', 'X', 'X',                                                              ' ', ' ' } },              { { ' ', ' ', ' ', ' ', 'X', 'X', ' ', ' ' }, { ' ', ' ', ' ',                                                              'X', 'X', 'X',                                                              ' ', ' ' },                { ' ', ' ', ' ', 'X', 'X', 'X', ' ', ' ' }, { ' ', ' ', 'X',                                                              ' ', 'X', 'X',                                                              ' ', ' ' },                { ' ', 'X', ' ', ' ', 'X', 'X', ' ', ' ' }, { ' ', 'X', 'X',                                                              'X', 'X', 'X',                                                              'X', ' ' },                { ' ', ' ', ' ', ' ', 'X', 'X', ' ', ' ' }, { ' ', ' ', 'X',                                                              'X', 'X', 'X',                                                              'X', ' ' } },              { { ' ', ' ', 'X', 'X', 'X', 'X', 'X', ' ' }, { ' ', ' ', 'X',                                                              'X', ' ', ' ',                                                              ' ', ' ' },                { ' ', ' ', 'X', 'X', 'X', 'X', ' ', ' ' }, { ' ', ' ', 'X',                                                              ' ', ' ', 'X',                                                              'X', ' ' },                { ' ', ' ', ' ', ' ', ' ', 'X', 'X', ' ' }, { ' ', ' ', ' ',                                                              ' ', ' ', 'X',                                                              'X', ' ' },                { ' ', 'X', ' ', ' ', ' ', 'X', 'X', ' ' }, { ' ', ' ', 'X',                                                              'X', 'X', 'X',                                                              ' ', ' ' } },              { { ' ', ' ', ' ', 'X', 'X', 'X', 'X', ' ' }, { ' ', ' ', 'X',                                                              'X', ' ', ' ',                                                              ' ', ' ' },                { ' ', 'X', 'X', ' ', ' ', ' ', ' ', ' ' }, { ' ', 'X', 'X',                                                              'X', 'X', 'X',                                                              ' ', ' ' },                { ' ', 'X', 'X', ' ', ' ', 'X', 'X', ' ' }, { ' ', 'X', 'X',                                                              ' ', ' ', 'X',                                                              'X', ' ' },                { ' ', 'X', 'X', ' ', ' ', 'X', 'X', ' ' }, { ' ', ' ', 'X',                                                              'X', 'X', 'X',                                                              ' ', ' ' } },              { { ' ', 'X', 'X', 'X', 'X', 'X', 'X', ' ' }, { ' ', 'X', ' ',                                                              ' ', ' ', 'X',                                                              'X', ' ' },                { ' ', ' ', ' ', ' ', ' ', 'X', 'X', ' ' }, { ' ', ' ', ' ',                                                              ' ', 'X', 'X',                                                              ' ', ' ' },                { ' ', ' ', ' ', ' ', 'X', 'X', ' ', ' ' }, { ' ', ' ', ' ',                                                              ' ', 'X', 'X',                                                              ' ', ' ' },                { ' ', ' ', ' ', 'X', 'X', ' ', ' ', ' ' }, { ' ', ' ', ' ',                                                              'X', 'X', ' ',                                                              ' ', ' ' } },              { { ' ', ' ', 'X', 'X', 'X', 'X', ' ', ' ' }, { ' ', 'X', 'X',                                                              ' ', ' ', 'X',                                                              'X', ' ' },                { ' ', 'X', 'X', ' ', ' ', 'X', 'X', ' ' }, { ' ', ' ', 'X',                                                              'X', 'X', 'X',                                                              ' ', ' ' },                { ' ', 'X', 'X', ' ', ' ', 'X', 'X', ' ' }, { ' ', 'X', 'X',                                                              ' ', ' ', 'X',                                                              'X', ' ' },                { ' ', 'X', 'X', ' ', ' ', 'X', 'X', ' ' }, { ' ', ' ', 'X',                                                              'X', 'X', 'X',                                                              ' ', ' ' } },              { { ' ', ' ', 'X', 'X', 'X', 'X', ' ', ' ' }, { ' ', 'X', 'X',                                                              ' ', ' ', 'X',                                                              'X', ' ' },                { ' ', 'X', 'X', ' ', ' ', 'X', 'X', ' ' }, { ' ', 'X', 'X',                                                              ' ', ' ', 'X',                                                              'X', ' ' },                { ' ', ' ', 'X', 'X', 'X', 'X', 'X', ' ' }, { ' ', ' ', ' ',                                                              ' ', ' ', 'X',                                                              'X', ' ' },                { ' ', ' ', ' ', ' ', 'X', 'X', ' ', ' ' }, { ' ', 'X', 'X',                                                              'X', 'X', ' ',                                                              ' ', ' ' } },              { { ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ' }, { ' ', ' ', ' ',                                                              'X', ' ', ' ',                                                              ' ', ' ' },                { ' ', ' ', ' ', 'X', ' ', ' ', ' ', ' ' }, { ' ', ' ', ' ',                                                              'X', ' ', ' ',                                                              ' ', ' ' },                { 'X', 'X', 'X', 'X', 'X', 'X', 'X', ' ' }, { ' ', ' ', ' ',                                                              'X', ' ', ' ',                                                              ' ', ' ' },                { ' ', ' ', ' ', 'X', ' ', ' ', ' ', ' ' }, { ' ', ' ', ' ',                                                              'X', ' ', ' ',                                                              ' ', ' ' } } };    int n;    scanf("%d", &n);    getchar();    while (n--)    {        char t[8][1000];        char temp[8];        memset(t, ' ', 8 * 1000 * sizeof(char));        int i, j, k;        for (i = 0; i < 8; i++)            gets(t[i]);        int a = 0, b = 0, isFirst = 1;        for (j = 0; j < 1000; j++)        {            for (i = 0; i < 8; i++)                temp[i] = t[i][j];            int number = get_number(s, temp);            if (number != ' ')            {                if (number != '+')                {                    if (isFirst)                        a = a * 10 + number;                    else                        b = b * 10 + number;                }                else                    isFirst = 0;                j += 6;            }        }        int result = a + b;        char rs[10];        int l = 0;        if (!result)        {            rs[0] = '0';            l = 1;        }        else        {            while (result)            {                rs[l++] = result % 10 + '0';                result /= 10;            }        }        for (i = 0; i < 8; i++)        {            for (j = l - 1; j >= 0; j--)                for (k = 0; k < 8; k++)                    putchar(digit[rs[j] - '0'][i][k]);            putchar('\n');        }        if (n)        {            gets(t[0]);            putchar('\n');        }    }    return 0;}


0 0
原创粉丝点击