zoukankan      html  css  js  c++  java
  • 题解 CF948A 【Protect Sheep】

    题目链接

    额。。这道题亮点在:

    $you$ $do$ $not$ $need$ $to$ $minimize$ $their$ $number.$

    所以说嘛。。。

    直接判断狼的四周有没有紧挨着的羊,没有的话,就直接空地全填狗输出。
    有的话就无解。之后就没了。。。很暴力。。。

    不过如果你问怎么做才能保证狗最少的话。。。。

    貌似是网络流。
    反正我不会。

    #include<iostream>
    #include<cstdio>
    #include<algorithm>
    using namespace std;
    char map[510][510];
    int r,c;
    int main()
    {
        scanf("%d%d",&r,&c);
        for(int i=1;i<=r;i++)
          for(int j=1;j<=c;j++)
          cin>>map[i][j];//输入
    
        for(int i=1;i<=r;i++)
          for(int j=1;j<=c;j++)
          {
              if(map[i][j]=='S')
              {
                  if(map[i-1][j]=='W'||map[i][j-1]=='W'||map[i+1][j]=='W'||map[i][j+1]=='W')//判断
                {
                    printf("No");
                    return 0;
                }
            }
          }
          printf("Yes
    ");
        for(int i=1;i<=r;i++,puts(""))
          for(int j=1;j<=c;j++)
          {
              if(map[i][j]=='.') printf("D");//如果是空地,则全变成狗。
            else printf("%c",map[i][j]);//输出。
          }
          return 0;//程序拜拜。
        
    }
    /*
    6 6
    ..S...
    ..S.W.
    .S....
    ..W...
    ...W..
    ......
    
    DDSDDD
    DDSDWD
    DSDDDD
    DDWDDD
    DDDWDD
    
    1 2
    SW
    
    
    */



  • 相关阅读:
    [WC2010]重建计划
    [POJ1741]Tree
    [NOI2008]志愿者招募
    [BZOJ2127]happiness
    「网络流 24 题」太空飞行计划
    [TJOI2015]线性代数
    [HDU2874]Connections between cities
    [POI2007]ZAP-Queries
    [SCOI2010]幸运数字
    POJ 2826 An Easy Problem?!
  • 原文地址:https://www.cnblogs.com/arcturus/p/9180209.html
Copyright © 2011-2022 走看看