zoukankan      html  css  js  c++  java
  • 华中农业大学校赛--c The Same Color

    Problem C: The Same Color

    Time Limit: 1 Sec  Memory Limit: 128 MB
    Submit: 993  Solved: 595
    [Submit][Status][Web Board]

    Description

       Diao Yang has many balls with different colors. Today he wants to divide his balls into two groups. But he does not know how to divide. Then Diao Ze gives him a suggestion: first you choose a ball and put it into the first group. Then from the second ball, if the color of the ball is same to the last ball you has chosen, then you put the ball into the other group. Otherwise you put the ball into the same group with the last ball. Diao Yang thinks it is OK.

       Then the problem is, Diao Yang wants to know the product of the number of two groups’ balls. Can you help him?

    Input

       The first line contains an integer T, indicating the number of test cases.

       In each test case, there are several lines, each line contains only one string with lowercas, indicating the color of the ball Diao Yang has chosen currently. Diao Yang will stop choosing when the string is equal to “END”. Note that the string “END” does not mean a color.

       You can assume that there are at most 100 lines in each test case and each string has at most 10 letters.

    Output

       For each test case, output the answer in a line.

    Sample Input

    3
    yellow
    yellow
    pink
    red
    red
    green
    END
    blue
    black
    purple
    purple
    END
    rose
    orange
    brown
    white
    END

    Sample Output

    9
    3
    0

    HINT



    In the first test case, the color of the first group’s balls are yellow, red, green, 3 balls in total. The color of the second group’s balls are yellow, pink, red, 3 balls in total too. So the product is 3×3=9.


       In the second test case, the answer is 3×1=3 and in the third test case the answer is 4×0=0.

    #include<iostream>
    #include<stdio.h>
    #include<string.h>
    #include<map>
    using namespace std;
    int main()
    {
        int n;
        scanf("%d",&n);
        while(n--)
        {
            int g[2];
            g[0]=1;
            g[1]=0;
            char a[12];
            char b[12];
            scanf("%s",b);
            int t=0;
            if(strcmp(b,"END")==0)
            {
                printf("0
    ");
                continue;
            }
            scanf("%s",a);
            while(strcmp(a,"END")!=0)
            {
                if(strcmp(a,b)==0)
                {
                    t=1-t;
                    g[t]++;
                }
                else
                {
    
                    g[t]++;
                }
                strcpy(b,a);
                scanf("%s",a);
            }
            printf("%d
    ",g[0]*g[1]);
        }
        return 0;
    }
    View Code

    水题,只是考虑第一个颜色就是END就可以了。wa惨了

  • 相关阅读:
    Python虚拟开发环境pipenv
    挖矿木马的应急响应
    熟悉使用ConfigParser库读写配置文件
    Django的RestfulAPI框架RestFramework
    使用DnsCat反弹shell
    使用mimikatz获取和创建Windows凭据的工具和方法
    拿下主机后内网的信息收集
    iOS 新浪微博-5.0 首页微博列表
    xcode 各版本下载地址及其它工具下载地址
    iOS 新浪微博-4.0 OAuth授权
  • 原文地址:https://www.cnblogs.com/superxuezhazha/p/5496089.html
Copyright © 2011-2022 走看看