总结google题WWWDOT – GOOGLE = DOTCOM 不同解法

1、

http://www.gocalf.com/blog/puzzle-wwwdot-google-dotcom.html

2、

试着证明WWWDOT-GOOGLE=DOTCOM
看这样行不:
A-B=C
则: A=B+C 
若定义A=WWWDOT,B=GOOGLE,C=DOTCOM,
据:A=B+C 
即:GOOGLE+DOTCOM=WWWDOT 
GOOGLEDOTCOM=WWWDOT 
因此:GOOGLE.COM=WWW.
所以: WWWDOT-GOOGLE=DOTCOM 成立
这个题目是想表达google能搜到整个互联网

3、

题目:解答下面的隐藏等式,其中的M和E的值可以互换,但不允许第一位是0��?BR>WWWDOT - GOOGLE = DOTCOM
解答代码:
/*******************************/
/*   Q:WWWDOT-GOOGLE=DOTCOM  */
/*   A:777589-188103=589486          */
/*     777589-188106=589483           */
/*******************************/

#include <stdio.h>
void getans(int num[], int n_tmp)    //通过递归调用对num_0_9数组进行组合排序
{
  int tmp;
  int w,d,o,t,g,l,e,c,m,wwwdot,google,dotcom;
  if(n_tmp == 1){
    w = num[0];
    d = num[1];
    o = num[2];
    t = num[3];
    g = num[4];
    l = num[5];
    e = num[6];
    c = num[7];
    m = num[8];
    wwwdot = w*111000 + d*100 + o*10 + t;
    google = g*100100 + o*11000 + l*10 + e;
    dotcom = d*100000 + o*10010 + t*1000 + c*100 + m;
    //其中的M和E的值可以互换,但不允许第一位是0��?
    if(w!=0 && g!=0 && d!=0)    
        if((wwwdot - google == dotcom) || (wwwdot - (google - e + m) == (dotcom - m + e)))
            printf("%d - %d = %d\n",wwwdot,google,dotcom);
  }
  else{
    for(int i = 0; i < n_tmp; i++){
      tmp=num[i]; num[i]=num[n_tmp-1]; num[n_tmp-1]=tmp;
      getans(num, n_tmp-1);
      tmp=num[i]; num[i]=num[n_tmp-1]; num[n_tmp-1]=tmp;
    }
  }
}
void main()
{
  int n = 10;
  int num_0_9[]={0,1,2,3,4,5,6,7,8,9};
  getans(num_0_9, n);
}

4、

今天无意在网上看到了Google实验室能力倾向测试
虽然已经过时了,不过还是很有趣,用了几分钟把第一题作出来了。在这里跟大家分享一下解题过程。原题目如下:

Solve  this  cryptic  equation,  realizing  of
course  that  values  for  M  and  E  could  be
interchanged.  No  leading  zeros  are  allowed.
WWWDOT  –   GOOGLE   =  DOTCOM

我的解法如下:
先把式子写成竖式方便推算:
wwwdot
google
dotcom

观察发现w-o=o, w-o=t。同样的减数,被减数做差不同,只能是产生了借位。(-1都表示低位做运算的时候有借位情况,+10则表示被减数小于减数,导致向高位借位。)
情况一:
w – o = t; w + 10 – o = o;
不成立。因为被减的都是o,不可能出现一个借位了,一个没有借。
情况二:
w – 1 + 10 – o = t; (被d – g借了一位)
w – 1 + 10 – o = o;(上一式成立的前提就是w-1 两等式左边相同,而结果不同,矛盾。
情况三:
w + 10 – o = t;
w + 10 – 1 – o = o;(-1是因为上式借位)
可推出w = 20 – 9; t = o + 1;
其中 0 =当o = 5或o = 6时w = 1,或2。w – g = d中g,d无法取值。
当o = 7的时候w = 5 t = 8。
因为w + 10 – o = t可知其低位d-g=c没有发生借位,即d>g。
又因为w = 5;所以g = 1, d = 3。(之前有借位)
当t = 8时,m,e可取值对为(1,7; 2,6; 3,5)。
当g = 1, d = 3时。c = d – g = 2;m, e的三对取值都与前假设矛盾。

所以,o = 8。可算出w = 7; t = 9;
此时d + g  = w – 1 = 6。所以d,g=5,1 或d,g = 4,2。
当d=4,g=2的时候,c=d-g=2。矛盾。所以d=5,g=1,推出c=4。
e,m则等于3, 6。o-l=o。所以l=0。
最后结果:0=l, 1=g, 2没有, 3=m/e, 4=c, 5=d, 6=e/m, 7=w, 8=o, 9=t

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值