zoukankan      html  css  js  c++  java
  • [Codeforces Round #192 (Div. 2)] A. Cakeminator

    A. Cakeminator
    time limit per test
    1 second
    memory limit per test
    256 megabytes
    input
    standard input
    output
    standard output
     

    You are given a rectangular cake, represented as an r × c grid. Each cell either has an evil strawberry, or is empty. For example, a 3 × 4 cake may look as follows:

    The cakeminator is going to eat the cake! Each time he eats, he chooses a row or a column that does not contain any evil strawberries and contains at least one cake cell that has not been eaten before, and eats all the cake cells there. He may decide to eat any number of times.

    Please output the maximum number of cake cells that the cakeminator can eat.

    Input

    The first line contains two integers r and c (2 ≤ r, c ≤ 10), denoting the number of rows and the number of columns of the cake. The next r lines each contains c characters — the j-th character of the i-th line denotes the content of the cell at row i and column j, and is either one of these:

    • '.' character denotes a cake cell with no evil strawberry;
    • 'S' character denotes a cake cell with an evil strawberry.
    Output

    Output the maximum number of cake cells that the cakeminator can eat.

    Sample test(s)
    input
    3 4
    S...
    ....
    ..S.
    output
    8
    Note

    For the first example, one possible way to eat the maximum number of cake cells is as follows (perform 3 eats).

    题解:直接模拟即可。

    题目地址:http://codeforces.com/contest/330/problem/A

    代码:

     1 #include<stdio.h>
     2 #include<string.h>
     3 #include<stdbool.h>
     4 int i,j,n,m,sum,num;
     5 
     6 bool cann[50],canm[50];
     7 
     8 char a[50];
     9 
    10 int
    11 pre()
    12 {
    13     memset(cann,true,sizeof(cann));
    14     memset(canm,true,sizeof(canm));
    15     return 0;
    16 }
    17 
    18 int
    19 init()
    20 {
    21     scanf("%d%d
    ",&n,&m);
    22     for(i=1;i<=n;i++)
    23     {
    24         scanf("%s",a);
    25         for(j=0;j<m;j++)
    26         if(a[j]=='S')
    27         {
    28             cann[i]=false;
    29             canm[j]=false;
    30         }
    31     }
    32     
    33     return 0;
    34 }
    35 
    36 int 
    37 main()
    38 {
    39     pre();
    40     init();
    41     for(i=1;i<=n;i++)
    42     if(cann[i])
    43     {
    44         sum+=m;
    45         num++;
    46     }
    47     
    48     for(i=0;i<m;i++)
    49     if(canm[i])
    50     sum=sum+n-num;
    51     
    52     printf("%d
    ",sum);
    53     
    54     return 0;
    55 }
  • 相关阅读:
    How to read a whole document content into a string onetime
    how to get the Authorization of adobe acrobat 8.0 for free
    给求职的同学的几点建议
    select() manul select() 手册
    有无一步登天之法?
    VB6.0 Excel模版,自己設定好分析餅圖,如何動態地更新分析圖的數據源呢?
    C#中的委托和事件(续)
    C# 中的委托和事件
    VB6.0 Excel的動態生成多個Sheet的方法
    VB6.0 用Excel生成數據分析餅圖例子
  • 原文地址:https://www.cnblogs.com/sxiszero/p/3641742.html
Copyright © 2011-2022 走看看