CSDN 黑白球 (逻辑题)

题目意思:黑白球

http://student.csdn.net/mcs/question_detail/597

一个袋子里有两种颜色的球,黑色和白色,你每次从中取出两个球,如果是同色的,则在袋子里放一个白球,否则放回一个黑球。

最后袋子里剩下一个球,你能最后判断球的颜色么?

输入格式:

多组测试数据,每组数据一行,有两个数。W和B。 (0<=W,B<=1000000000, W + B > 0),分别表示最初白球和黑球的个数。

输出格式:

如果你能确定最后一定剩余白球,输出WHITE,如果能确定最终一定剩余黑球,则输出BLACK,否则输出UNKNOWN。

题目分析:

分情况进行取球就行了,(刚开始也没有想,就直接看题目的思路提示)

取球的情况分为三种:

1、取一黑一白,放回一个黑球,相当于取出一个白球。

2、取两个白球,放回一个白球,相当于取出一个白球。

3、取两个黑球,放回一个白球,相当于取出两个黑球,放回一个白球。

通过上述分析我们发现白球可以每次取出一个,而黑球只能成对取出,很显然我们对黑球个数进行分析。

当黑球个数为奇数时,黑球必然无法取尽,最后剩下一个黑球,白球无论有多少,通过前两种方法每次取出一个,都可以逐个取出,直到取尽,最后剩下一个黑球。

当黑球个数为偶数是=时,若黑球先去尽,则剩下白球,根据第二种情况每次取出一个白球,最后剩下一个白球无法取出;若黑球没有取尽,白球按照前两种情况取尽,最后余下两个黑球,那么最后又=一次根据情况三取出两个黑球放回一个白球,最后还是剩下一个白球。

AC代码:

#include<iostream>
using namespace std;
int main()
{
    long long w,b;
    while(cin>>w>>b){
        if(w==1&&b==0){
            cout<<"WHITE"<<endl;
            continue;
        }
        if(w==0&&b==1){
            cout<<"BLACK"<<endl;
            continue;
        }
        if(b%2==0) cout<<"WHITE"<<endl;
        else cout<<"BLACK"<<endl;

    }
    return 0;
}
时间: 2024-10-05 15:17:08

CSDN 黑白球 (逻辑题)的相关文章

笔试逻辑题

笔试逻辑题 1 平均需要抛掷多少次硬币,才会首次出现连续两个正面? https://blog.csdn.net/tianxiajianling/article/details/7458560 2 某大公司有这么一个规定:只要有一个员工过生日,当天所有员工全部放假一天.但在其余时候,所有员工都没有假期,必须正常上班.这个公司需要雇用多少员工,才能让公司一年内所有员工的总工作时间期望值最大? 假设一年恒定365天,每个员工的生日都概率均等地分布在这365天里. 对E求导,得到n约等于365. 3 两

逻辑题:猜年龄

在CSDN程序人生微信公众号里,发了一道逻辑题,觉得挺有意思,特地拿出来,分享一下. 题目:某公司的两位科学家(甲.乙)去吃饭,坐在一家酒店靠近街道的窗口座位吃饭,在等待上菜的过程中,闲极无聊,甲向乙出了一道猜三个女儿年龄的题目. 甲:我有3个女儿,3人年龄之积等于36: 乙:猜不出来: 甲:3个女儿年龄之和等于街道上的行人数: 乙:还是无法确定: 甲:我的大女儿叫苏珊. 乙:哦,我知道了. 请问:甲的3个女人年龄各是多少? 分析: 共有3个条件,根据条件1,3人年龄之积等于36,因此可能有如下

前端面试常见逻辑题收集及分析

前端面试中常出现一些有趣的逻辑题,初见的时候有可能会手足无措,但实际多看几个题之后就会有一定的思考逻辑,有种打通任督二脉的感觉.以下是我个人面试经历以及网络上收集来的一些经典题目. 题目: 1.现有一个装有无限水的池塘,你手里有两个空壶,一个容积为6升,一个为5升,请问你如何用这两个空壶打3升水?请写出具体步骤(腾讯) 2.有一个烤肉架,它能同时烤两块肉,已知每块肉完全烤熟一面需要5分钟,请问用这个烤肉架烤熟三块肉最快是多少时间?(腾讯) 3.现有A.B两辆汽车相隔一段距离,它们之间有一只小鸟,

编程之美---桶中取黑白球

题目:有一个桶,里面有白球.黑球各100个,人们必须按照以下的规则把球取出来: 1.每次从桶里面拿出来两个球: 2.如果是两个同色的球,就再放入一个黑球: 3.如果是两个异色的球,就再放入一个白球: 问:最后桶里面只剩下一个黑球的概率是多少? 解法一:用黑白球各两个,来模拟,从小到多,化繁为简,进行分析和推断,找出其内在的规律,并归纳总结.推断出:每次减少一个球,每次拿球后,白球数要么不变,要么两个两个的减少.所以最后必然只剩一个黑球. 解法二:把黑球编号0,白球编号1,然后就相当于是异或操作了

2014百度之星资格赛 1001:Energy Conversion(水题,逻辑题)

Energy Conversion Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 4278    Accepted Submission(s): 1024 Problem Description 魔法师百小度也有遇到难题的时候-- 现在,百小度正在一个古老的石门面前,石门上有一段古老的魔法文字,读懂这种魔法文字需要耗费大量的能量和大量的

黑白球--智力测验

作者:iamlaosong 一个袋子里有两种颜色的球,黑色和白色,你每次从中取出两个球,如果是同色的,则在袋子里放一个白球,否则放回一个黑球. 最后袋子里剩下一个球,你能最后判断球的颜色么?或者说,你能给出判断最后一个球颜色的算法吗? 具体可见编程挑战:黑白球  ,先思考,不要看下面的分析. 分析: 按题意,无论拿出来什么样的组合,黑球的数量变化是:要么数量不变,要么去掉两个黑球,白球变化则无规律可循,可能少一个,也可能多一个.所以,可以你可以不考虑白球的数量,只考虑黑球的数量,黑球的数量会越来

腾讯算法逻辑题

前几天小生去了一趟腾讯,接受前端大大的虐待. 整个过程充斥着各种血与泪,特别是他们的算法逻辑题,让我甚是上心.遂mark下,以求甚解... 经过一番思考以及和小伙伴们的共同探索,总算代码的运行结果是符合题目要求了,不过也不确定是否是最佳答案... 且不管了,如果知道有更好的答案再更新便是.. 有人也许会说,骚年,你这样把题目发出来真的好吗?这样不担心是个人都有种去企鹅面前装13吗? 那么我可以很负责任的说,这几道题只是餐前小菜.真正的风浪在后头,假如谁天真的以为有了这几道题就稳了,小心被人当猴看

iOS面试的一个逻辑题

一个同行的朋友前往某公司面试,在笔试的最后一题,出了这么一个问题:(分值为20分) 一个很古老的村子,这个村子的人分两种,红眼睛和蓝眼睛,这两种人并没有什么不同,小孩在没生出来之前,没人知道他是什么颜色的眼镜,这个村子中间有一个广场,是村民们聚集的地方,现在这个村子有三个人,分住三处,在这个村子,有一个规定,就是如果一个人能知道自己眼睛的颜色并且在晚上自杀的话,他就会升入天堂,这三个人不能够用语言告诉对方眼睛的颜色,也不能用任何方式提示对方的眼睛是什么颜色,而且也不能用镜子,水等一切有反光的物质

逻辑题逻辑思维题

75道逻辑思维题-------会作10道智商就是正常,会作30道就不是凡人,会作60道就是高智商稀有人才了! [1]假设有一个池塘,里面有无穷多的水.现有2个空水壶,容积分别为5升和6升.问题是如何只用这2个水壶从池塘里取得3升的水. [2]周雯的妈妈是豫林水泥厂的化验员. 一天,周雯来到化验室做作业.做完后想出去玩. "等等,妈妈还要考你一个题目,"她接着说,"你看这6只做化验用的玻璃杯,前面3只盛满了水,后面3只是空的.你 能只移动1只玻璃杯,就便盛满水的杯子和空杯子间隔