日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

Counterfeit Dollar(poj1013暴力枚舉)

系統(tǒng) 2971 0

題意:有A-L個標(biāo)號的硬幣,其中有一個是假幣,你不知道假幣的輕重,現(xiàn)在給你三個字符串,up代表右面輕,down右面重,even代表兩面相等,找出假幣并且判斷輕重

思路:因為只有A-L個硬幣所以枚舉一下,假設(shè)A是假幣,然后判斷一下是否滿足那三個條件,滿足條件的保存

怎么是滿足條件,除了不滿足條件的,剩下的都滿足條件。

不滿足條件的

1.兩面相等的字符串出現(xiàn)假幣,說明假設(shè)不成立。

2.右面輕的字符串出現(xiàn)假幣在左面輕或者在右面重,說明假設(shè)也不成立。

3.右面重的字符串出現(xiàn)假幣在左面中或者在右面輕,說明假設(shè)也不成立。

不滿足上面條件就是假幣。

?

    #include<iostream>

#include<cstdio>

#include<cstring>

using namespace std;

char L[3][10];

char R[3][10];

char heav[3][10];

struct coin

{

    char c;

    int flag;

};

int main()

{

    int t;

    scanf("%d",&t);

    while(t--)

    {

        int i,j;

        for(i = 0; i < 3; i++)

        {

            scanf("%s%s%s",L[i],R[i],heav[i]);

        }

        coin a;a.c = 'A',a.flag = -1;

        int f;

        for(i = 0; i < 12; i++)

        {

            int flag_L = 0,flag_R = 0;f = -1;

            for(j = 0; j < 3; j++)

            {

                flag_L = 0,flag_R = 0;

                int len;

                int len_L = strlen(L[j]),len_R = strlen(R[j]);

                for(len = 0; len < len_L; len++)

                {

                    if((i+'A') == L[j][len])

                        flag_L = 1;

                }

                for(len = 0; len < len_R; len++)

                {

                    if((i+'A') == R[j][len])

                        flag_R = 1;

                }

                if(strcmp(heav[j],"even") == 0 )

                {

                    if(flag_L || flag_R)

                    {

                        break;

                    }

                }

                else if(strcmp(heav[j],"up") == 0)

                {//printf("%c\n",i+'A');

                    if(flag_R && f == 0)

                        break;

                    if(flag_L && f == 1)

                        break;

                    if(!flag_R && !flag_L)

                        break;

                    if(flag_R)

                     {

                        f = 1;

                    }

                    else if(flag_L)

                    {

                        f = 0;

                    }

                }

                else if(strcmp(heav[j],"down") == 0)

                {

                    if(flag_L && f == 0)

                        break;

                    if(flag_R && f == 1)

                        break;

                    if(!flag_R && !flag_L)

                        break;

                    if(flag_L)

                    {

                        f = 1;

                    }

                    if(flag_R)

                    {

                        f = 0;

                    }

                }

            }

            if(j == 3)

            {

                a.c = i+'A';

                a.flag = f;

            }

        }

        if(a.flag == 0)

            printf("%c is the counterfeit coin and it is heavy.\n",a.c);

        else

            printf("%c is the counterfeit coin and it is light.\n",a.c);

    }

    return 0;

}


  


?

?

Counterfeit Dollar(poj1013暴力枚舉)


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發(fā)表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 桓仁| 全椒县| 弋阳县| 门头沟区| 恩平市| 饶平县| 洪雅县| 皮山县| 台江县| 岚皋县| 鄂州市| 沙田区| 宁蒗| 赣州市| 扎囊县| 河北区| 张家口市| 吉木萨尔县| 金川县| 和田市| 东阿县| 淮滨县| 灌阳县| 云霄县| 洪江市| 务川| 喀喇沁旗| 新蔡县| 桑植县| 静宁县| 蕲春县| 岚皋县| 桂平市| 高邑县| 西平县| 承德市| 双柏县| 射阳县| 元谋县| 疏勒县| 五寨县|