zoukankan      html  css  js  c++  java
  • Codeforces Round #250 (Div. 2) A

    传送门Codeforces Round #250 (Div. 2) A - The Child and Homework


    第一次做完之后交上去,过了例子。顺手就锁定了。。。然后一个小时之后就被HACK了大哭

    一開始依据题目的条件推断,假设有一个符合就输出,然后进行下一组。

    可是假设同一时候满足两个条件,是应该输出C的。


    哎。。


    对四个句子长度进行排序。分别比較第一个和第二个&第三个和第四个,假设都满足条件输出C。


    #include <cstdio>
    #include <cstring>
    #include <algorithm>
    using namespace std;
    
    int cmp(const void *_a, const void *_b)
    {
        char *a = (char *)_a;
        char *b = (char *)_b;
        return strlen(a) - 2 - (strlen(b) - 2);
    }
    
    int main()
    {
        //freopen("input.txt", "r", stdin);
        char str[5][200];
        bool flag1, flag2;
        while (gets(str[0]))
        {
            flag1 = flag2 = false;
            for (int i = 1; i < 4; i++)
                gets(str[i]);
            qsort(str, 4, sizeof(str[0]), cmp);
            int flen = strlen(str[0]) - 2, slen = strlen(str[1]) - 2, tlen = strlen(str[2]) - 2, llen = strlen(str[3]) - 2;
            if (2 * flen <= slen)
                flag1 = true;
            if (llen >= tlen * 2)
                flag2 = true;
            if (!flag1 && !flag2 || (flag1 && flag2))
            {
                printf("C
    ");
                continue;
            }
            if (flag1)
                printf("%c
    ", str[0][0]);
            if (flag2)
                printf("%c
    ", str[3][0]);
        }
        return 0;
    }
    



  • 相关阅读:
    第二章、Redis入门介绍
    最高的牛
    增减序列
    激光炸弹
    分形之城
    约数之和
    奇怪的汉诺塔
    费解的开关
    递归实现排列型枚举
    递归实现组合型枚举
  • 原文地址:https://www.cnblogs.com/llguanli/p/6857686.html
Copyright © 2011-2022 走看看