• HDU3344(小广搜+小暴力


    Kakuro Extension Extension

    Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)
    Total Submission(s): 507    Accepted Submission(s): 248


    Problem Description
    You know ,I'm a lazy guy and write problem description is a very very boring thing.So , I would not repeat the rule of Kakuro again , Please look at this.But things are different again,contray to the problem above,this time you should work out the input file according to the output file.
     

     

    Input
    The first line of the inputs is T, which stands for the number of test cases you need to solve.
    Then T case follow:
    Each test case starts with a line contains two numbers N,M (2<=N,M<=100)and then N lines follow, each line contains M columns, either ‘_’ or 1~9. You can assume that the first column of the first line is ’_’.
     

     

    Output
    Output N lines, each line contains M parts, each part contains 7 letters. The m parts are seperated by spaces.Output a blank line after each case.
     

     

    Sample Input
    2 6 6 _ _ _ _ _ _ _ _ 5 8 9 _ _ 7 6 9 8 4 _ 6 8 _ 7 6 _ 9 2 7 4 _ _ _ 7 9 _ _ 5 8 _ _ _ _ _ _ _ _ _ 1 9 9 1 1 8 6 _ _ 1 7 7 9 1 9 _ 1 3 9 9 9 3 9 _ 6 7 2 4 9 2 _
     

     

    Sample Output
    XXXXXXX XXXXXXX 028XXX 017XXX 028XXX XXXXXXX XXXXXXX 02222 ....... ....... ....... 010XXX XXX34 ....... ....... ....... ....... ....... XXX14 ....... ....... 01613 ....... ....... XXX22 ....... ....... ....... ....... XXXXXXX XXXXXXX XXX16 ....... ....... XXXXXXX XXXXXXX XXXXXXX 001XXX 020XXX 027XXX 021XXX 028XXX 014XXX 024XXX XXX35 ....... ....... ....... ....... ....... ....... ....... XXXXXXX 00734 ....... ....... ....... ....... ....... ....... XXX43 ....... ....... ....... ....... ....... ....... ....... XXX30 ....... ....... ....... ....... ....... ....... XXXXXXX
     

     

    Author
    shǎ崽
     

     

    Source
     

     

    Recommend
     
     
     
     
     

    #include<cstdio>
    #include<cstring>
    #include<iostream>
    #include<algorithm>
    using namespace std;
    char a[105][105];

    void pd(int x,int y,int m,int n)
    {
        if(a[x][y]>='1'&&a[x][y]<='9')
        {
            printf(".......");
            return ;
        }
        int sum1=0,sum2=0;
        int flag1=0;
        int flag2=0;
        if(x==m)
            flag1=1;
        if(y==n)
            flag2=1;
        for(int i=x+1; i<=m; i++)
        {
            if(a[x+1][y]=='_')
                flag1=1;
            if(a[i][y]=='_')
                break;
            sum1=sum1+(a[i][y]-'0');
        }
        for(int j=y+1; j<=n; j++)
        {
            if(a[x][y+1]=='_')
                flag2=1;
            if(a[x][j]=='_')
                break;
            sum2=sum2+(a[x][j]-'0');
        }
        if(flag1==1&&flag2==1)
        {
            printf("XXXXXXX");

        }
        else if(flag1==1&&flag2==0)
        {
                printf("XXX");
                printf("\");
                printf("%03d",sum2);


        }
        else if(flag1==0&&flag2==1)
        {
                printf("%03d",sum1);
                printf("\");
                printf("XXX");
        }
        else if(flag1==0&&flag2==0)
        {
                printf("%03d\%03d",sum1,sum2);
        }

    }
    int main()
    {
        int m,n;
        int t;
        scanf("%d",&t);
        while(t--)
        {
            memset(a,0,sizeof(a));
            scanf("%d%d",&m,&n);
            getchar();
            for(int i=1; i<=m; i++)
            {
                for(int j=1; j<=n; j++)
                {
                    //scanf("%c",&a[i][j]);
                    cin >> a[i][j];
                }

            }
            char ch=' ';
            for(int i=1; i<=m; i++)
            {
                for(int j=1; j<=n; j++)
                {
                    /*if(a[1][1]!='_')
                        a[1][1]='_';*/
                    pd(i,j,m,n);
                    if(j!=n)
                        printf("%c",ch);
                }
                printf(" ");
            }
            printf(" ");
        }
        return 0;
    }

  • 相关阅读:
    C#操作XML
    Eval调用函数
    SQL 日期时间函数
    vue中created和mounted区别
    记录uniapp的APP端分享到微信好友,链接为小程序页面,分享失败的BUG
    【News】Windows CE会死吗?答,死不了,只是变身了。
    【原创】工作总结
    【原创】工作总结之二
    【资源收集】关于WINCE网卡开发的知识收集
    【news】wince 7 preview release。大家可以去看看
  • 原文地址:https://www.cnblogs.com/13224ACMer/p/4445093.html
Copyright © 2020-2023  润新知