| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 858 人关注过本帖
标题:古堡算式
只看楼主 加入收藏
zhu_zhi
Rank: 2
来 自:广西百色
等 级:论坛游民
帖 子:129
专家分:92
注 册:2013-4-25
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:13 
古堡算式

   
    福尔摩斯到某,看到门上写着一个奇怪的算式:

    ABCDE * ? = EDCBA

    他对华生说:“ABCDE应该代表不同的数字,问号也代表某个数字!”

    华生:“我猜也是!”

    于是,两人沉默了好久,还是没有算出合适的结果来。

    请你利用计算机的优势,找到破解的答案。

    把 ABCDE 所代表的数字写出来。

   
搜索更多相关主题的帖子: 福尔摩斯 计算机 
2013-12-09 21:49
tlliqi
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:204
帖 子:15453
专家分:65956
注 册:2006-4-27
收藏
得分:3 
ABCDE * X = EDCBA
2013-12-09 21:55
Susake
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:女儿国的隔壁
等 级:贵宾
威 望:23
帖 子:2288
专家分:6481
注 册:2012-12-14
收藏
得分:3 
10000-99999

仰望星空...........不忘初心!
2013-12-09 22:08
zhu_zhi
Rank: 2
来 自:广西百色
等 级:论坛游民
帖 子:129
专家分:92
注 册:2013-4-25
收藏
得分:0 
答案是:21978。即4*21978=87912。我用了整整一天的时间才弄出,是不是效率很低啊?
2013-12-09 22:37
hu9jj
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:红土地
等 级:贵宾
威 望:400
帖 子:11857
专家分:43421
注 册:2006-5-13
收藏
得分:3 
用计算机算了一整天?

活到老,学到老!http://www.(该域名已经被ISP盗卖了)E-mail:hu-jj@
2013-12-10 07:47
yuccn
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:何方
等 级:版主
威 望:167
帖 子:6815
专家分:42393
注 册:2010-12-16
收藏
得分:3 
回复 4楼 zhu_zhi
计算机算了多少时间?计算机枚举,应该也不会超过1秒钟把。改进下算法?算法贴出来

我行我乐
公众号:逻辑客栈
我的博客:
https://blog.yuccn. net
2013-12-10 08:46
embed_xuel
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:58
帖 子:3845
专家分:11385
注 册:2011-9-13
收藏
得分:3 
穷举肯定慢,A*X小于等于9,可以刨除一些不必要的运算。算法我不懂啊,随便说的

总有那身价贱的人给作业贴回复完整的代码
2013-12-10 09:40
IceSource
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:37
专家分:139
注 册:2013-12-3
收藏
得分:3 
回复 楼主 zhu_zhi
程序代码:
int main()
{
    int in;        //ABCDE
    int out;    //EDCBA
    int k;        // ?
    int a[5] = {0};        // 各位数字:A B C D E

    for(in=10000; in<=99999; in++)
    {
        out = 0;
        k = 1;
        int i =0;
        int tmp = in;    

        //ABCDE -> EDCBA
        do{
            a[i++] = tmp%10;  
            out = out*10 + (tmp%10);
        }while(0 != (tmp=tmp/10));      
        

        if(!(a[0]^a[1] && a[0]^a[2] && a[0]^a[3] && a[0]^a[4] && a[1]^a[2] && a[1]^a[3] && a[1]^a[4] && a[2]^a[3] a[2]^a[4] && a[3]^a[4]))
            continue;

        while((in*k) < out)
        {
            k++;
        }
        if((in*k) == out)
        {
            printf("%d * %d = %d\n", in, k, out);
        }
    }

    return 0;
}
贴上代码,求大神点评

[ 本帖最后由 IceSource 于 2013-12-10 12:40 编辑 ]
2013-12-10 12:37
y1207435881
Rank: 8Rank: 8
等 级:蝙蝠侠
帖 子:225
专家分:762
注 册:2013-4-30
收藏
得分:3 
2013-12-10 15:14
zhu_zhi
Rank: 2
来 自:广西百色
等 级:论坛游民
帖 子:129
专家分:92
注 册:2013-4-25
收藏
得分:0 
回复 5楼 hu9jj
sorry!
我的意思是,我想了一天,才把代码弄出来。
计算机算出结果只是一瞬间而已。
2013-12-10 17:38
快速回复:古堡算式
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.062025 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved