黑球白球

<span style="font-family: 微软雅黑, 宋体, Arial; font-size: 12px; background-color: rgb(255, 255, 255);">一个袋子里有两种颜色的球,黑色和白色,你每次从中取出两个球,如果是同色的,则在袋子里放一个白球,否则放回一个黑球。</span>

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

输入格式:

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

输出格式:

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



答题说明

输入样例

3 1

3 6

输出样例:

BLACK

WHITE


解析:这道题很像数字电路里面的题.

对取出的球进行分类讨论:

       白白      放回一白       相当于取出一白

       白黑      放回一黑       相当于取出一白

       黑白      放回一黑       相当于取出一白

       黑黑      放回一白       相当于两个黑球变成了一个白球

      可见,你只能取出白球,或者把袋中的黑球变成白球.

      若袋中黑球个数为奇数个,就不可能把那个落单的黑球取出来了,也无法把它变成白球.


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


原文地址:https://www.cnblogs.com/weiyinfu/p/5013914.html