zoukankan      html  css  js  c++  java
  • cf C. Purification

    http://codeforces.com/contest/330/problem/C

    这道题分三种情况。有一行全是E,有一列全是E,还有一种为无解的情况。

     1 #include <cstdio>
     2 #include <cstring>
     3 #include <algorithm>
     4 #define maxn 200
     5 using namespace std;
     6 
     7 char g[maxn][maxn];
     8 int r[maxn],c[maxn];
     9 
    10 int main()
    11 {
    12     int n;
    13     scanf("%d",&n);
    14     for(int i=0; i<n; i++)
    15     {
    16         scanf("%s",g[i]);
    17     }
    18     memset(r,0,sizeof(r));
    19     memset(c,0,sizeof(c));
    20     bool flagr=false;
    21     bool flagc=false;
    22     for(int i=0; i<n; i++)
    23     {
    24         for(int j=0; j<n; j++)
    25         {
    26             if(g[i][j]=='E')
    27             {
    28                 r[i]++;
    29                 c[j]++;
    30                 if(r[i]==n) flagr=true;
    31                 if(c[j]==n) flagc=true;
    32             }
    33         }
    34     }
    35     if(flagc&&flagr)
    36     {
    37         printf("-1
    ");
    38         return 0;
    39     }
    40     if(flagr)
    41     {
    42         for(int i=0; i<n; i++)
    43         {
    44             for(int j=0; j<n; j++)
    45             {
    46                 if(g[j][i]=='.')
    47                 {
    48                     printf("%d %d
    ",j+1,i+1);
    49                     break;
    50                 }
    51             }
    52         }
    53     }
    54     else if(flagc)
    55     {
    56         for(int i=0; i<n; i++)
    57         {
    58             for(int j=0; j<n; j++)
    59             {
    60                 if(g[i][j]=='.')
    61                 {
    62                     printf("%d %d
    ",i+1,j+1);
    63                     break;
    64                 }
    65             }
    66         }
    67     }
    68     else
    69     {
    70         for(int i=0; i<n; i++)
    71         {
    72             for(int j=0; j<n; j++)
    73             {
    74                 if(g[i][j]=='.')
    75                 {
    76                     printf("%d %d
    ",i+1,j+1);
    77                     break;
    78                 }
    79             }
    80         }
    81     }
    82     return 0;
    83 }
    View Code
  • 相关阅读:
    微信小程序左右滚动公告栏效果
    返回当前页面title、url等操作
    打开URL操作
    打开浏览器操作
    Java for selenium(webdriver) 环境搭建
    HTMLTestRunner 自动化测试报告
    Python特殊语法:filter、map、reduce、lambda [转]
    抽象类
    __str__
    WebTable 扩展
  • 原文地址:https://www.cnblogs.com/fanminghui/p/3673992.html
Copyright © 2011-2022 走看看