zoukankan      html  css  js  c++  java
  • CodeChef December Challenge 2017 Chef And his Cake

    https://www.codechef.com/DEC17/problems/GIT01

    #include<cstdio>
    #include<algorithm>
     
    using namespace std;
     
    #define N 101
     
    char s[N];
     
    int main()
    {
        int T;
        scanf("%d",&T);
        int n,m;
        int OddG,OddR,EvenG,EvenR;
        int ans;
        while(T--)
        {
            OddG=OddR=EvenG=EvenR=0;
            scanf("%d%d",&n,&m);
            for(int i=1;i<=n;++i)
            {
                scanf("%s",s+1);
                for(int j=1;j<=m;++j)
                {
                    if(s[j]=='G') 
                    {
                        if((i+j)&1) OddG++;
                        else EvenG++;
                    }
                    else
                    {
                        if((i+j)&1) OddR++;
                        else EvenR++;
                    }
                }
            }
            ans=5*OddR+3*EvenG;
            ans=min(ans,3*OddG+5*EvenR);
            printf("%d
    ",ans);
        }
    } 


    All submissions for this problem are available.

    Read problems statements in Mandarin chineseRussian andVietnamese as well.

    Chef’s girlfriend's birthday is near, so he wants to surprise her by making a special cake for her. Chef knows that his girlfriend likes cherries on the cake, so he puts cherries on the top of the cake, but he was not satisfied. Therefore, he decided to replace some of the cherries to make a beautiful pattern. However, Chef has a lot of other work to do so he decided to ask for your help.

    The cherries are of two colors red and green. Now Chef wants the cherries to be placed in such a way that each cherry of one color must be adjacent to only cherries of the other color, two cherries are adjacent if they share a side. Now Chef has asked for your help in making that pattern on the cake.

    You can replace any cherry of given color with the other color. But there is a cost for each replacement: if you replace a red cherry with a green one, the cost is 5 units and if you replace a green cherry with a red one, the cost is 3 units.

    Help your friend Chef by making the cake special with minimum cost.

    Input

    • The first line of the input contains a single integer T denoting the number of test cases. The description of T test cases follows.
    • The first line of each test case contains two space-separated integers N and M, where N × M are the dimensions of the cake.
    • Each of the next N lines contains a string of length M.

    Output

    For each test case, output the minimum cost required to make the cake special.

    Constraints

    • 1 ≤ T ≤ 100
    • 1 ≤ N, M ≤ 100
    • each string consists only of letters 'R' and 'G' denoting red and green cherries respectively

    Example

    Input:
    
    2
    4 5
    RGRGR
    GRGRG
    RGRGR
    GRGRG
    2 3
    RRG
    GGR
    
    Output:
    
    0
    8
  • 相关阅读:
    C/C++ 编写一个通用的Makefile 来编译.c .cpp 或混编
    C/C++ 定义接口文件格式
    MySql存储过程例子1
    项目所遇问题
    linux下编译C++程序无法链接Mysql的问题
    linux 同步时间 调试core内核
    CentOS安装与更新git
    03 js基本数据类型、 js运算符1
    02 js运行原理 、js开发工具介绍 、js程序入门、 js基本语法
    01 js基本介绍
  • 原文地址:https://www.cnblogs.com/TheRoadToTheGold/p/8059959.html
Copyright © 2011-2022 走看看