• cf 1015 E1. Stars Drawing (Easy Edition)


    暴力把能填的都填,用vis数组标记,如果出现填不了的输出-1

    #include<bits/stdc++.h>
    using namespace std;
    char graph[110][110];
    int vis[110][110];
    int xx[10010];
    int yy[10010];
    int si[10010];
    int tot;
    int n,m;
    bool check(int i,int j,int k)
    {
        if(i-k<1||i+k>n||j-k<1||j+k>m)
          return false;
        return true;
    }
    int main()
    {
        scanf("%d%d",&n,&m);
        for(int i=1;i<=n;i++)
        {
            getchar();
            for(int j=1;j<=m;j++)
            {
                scanf("%c",&graph[i][j]);
            }
        }
        for(int i=1;i<=n;i++)
        {
            for(int j=1;j<=m;j++)
            {
                if(graph[i][j]=='*')
                {
                    int index=-1;
                    for(int k=1;check(i,j,k);k++)
                    {
                        if(graph[i+k][j]=='*'&&graph[i-k][j]=='*'&&graph[i][j+k]=='*'&&graph[i][j-k]=='*')
                        {
                            index=k;
                            vis[i][j]=vis[i+k][j]=vis[i-k][j]=vis[i][j+k]=vis[i][j-k]=1;
                        }
                        else
                          break;    
                    }    
                    if(index!=-1)
                    {
                        xx[++tot]=i;
                        yy[tot]=j;
                        si[tot]=index;
                    }
                }    
            }
        }
        for(int i=1;i<=n;i++)
        {
            for(int j=1;j<=m;j++)
            {
                if(graph[i][j]=='*'&&vis[i][j]==0)
                {
                    printf("-1
    ");
                    return 0;
                }
            }
        }
        printf("%d
    ",tot);
        for(int i=1;i<=tot;i++)
           printf("%d %d %d
    ",xx[i],yy[i],si[i]);
    }
  • 相关阅读:
    [转载]MATLAB 图像处理命令
    html Window与document区别(轉)
    ICMP数据包结构(转)
    CString,string,char*之间的转换(转)
    word或dword区别
    VS2010 皮肤扩展
    Unicode _T和L和_TXET
    转:git 的常用命令
    git fetch 和 git pull 的区别
    mac git 命令自动补全
  • 原文地址:https://www.cnblogs.com/lishengkangshidatiancai/p/10285552.html
Copyright © 2020-2023  润新知