| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 569 人关注过本帖
标题:数字控们有福啦,进来瞧一瞧啊
只看楼主 加入收藏
cddazao
Rank: 2
来 自:四川
等 级:论坛游民
帖 子:46
专家分:25
注 册:2013-2-12
结帖率:62.5%
收藏
已结贴  问题点数:20 回复次数:7 
数字控们有福啦,进来瞧一瞧啊
http://pan.baidu.com/share/link?shareid=2676007940&uk=4180621342
不才做了个猜数字的小游戏,希望大家支持一下
搜索更多相关主题的帖子: 小游戏 
2013-07-24 22:46
cddazao
Rank: 2
来 自:四川
等 级:论坛游民
帖 子:46
专家分:25
注 册:2013-2-12
收藏
得分:0 
http://pan.baidu.com/share/link?shareid=2823302646&uk=4180621342有游戏截图也在这里面哟
2013-07-24 22:48
cddazao
Rank: 2
来 自:四川
等 级:论坛游民
帖 子:46
专家分:25
注 册:2013-2-12
收藏
得分:0 
大神总是喜欢悄悄来悄悄走。。。
2013-07-24 22:51
thematrix123
Rank: 2
等 级:论坛游民
帖 子:8
专家分:52
注 册:2013-7-10
收藏
得分:20 
我写的一个对立程序,每次猜4个数,输入到你的程序中,把你的程序中输出的两个数再输入到我的程序中,一般来说10次之类必然猜中,6次有难度,有点靠运气
程序代码:
#include <stdio.h>
#include <time.h>

int f[10000];

int check(int i,int a,int b,int c,int d,int s,int t)
{
    int j,aa,bb,cc,dd,ss,tt=0,ee=i;
    dd=ee%10; ee/=10;
    cc=ee%10; ee/=10;
    bb=ee%10; ee/=10;
    aa=ee;
    ss=(a==aa)+(b==bb)+(c==cc)+(d==dd);
    if (s!=ss) return 0;
    
    int p[10];
    for (j=0; j<10; j++) p[j]=0;
    p[aa]++; p[bb]++; p[cc]++; p[dd]++;
    if (p[a]>0) tt++;
    if (p[b]>0) tt++;
    if (p[c]>0) tt++;
    if (p[d]>0) tt++;
    if (t!=tt) return 0;
    return 1;
}

int num(int e)
{
    int a,b,c,d,s=1;
    d=e%10; e/=10;
    c=e%10; e/=10;
    b=e%10; e/=10;
    a=e;
    if (b!=a) s++;
    if (c!=a && c!=b) s++;
    if (d!=c && d!=b && d!=a) s++;
    return s;
}
    
int main()
{
    srand(time(NULL));
    int i,a,b,c,d,e,s,t,total=10000;
    while (1)
    {
          t=0; 
          for (i=0; i<10000; i++)
          if (!f[i] && t<num(i))
          {
                    e=i; t=num(i);
          }
                    
          d=e%10; e/=10;
          c=e%10; e/=10;
          b=e%10; e/=10;
          a=e;
          
          printf("%d %d %d %d\n",a,b,c,d);
          if (total==1) break;
          
          scanf("%d%d",&t,&s);
          for (i=0; i<10000; i++)
              if (!f[i] && !check(i,a,b,c,d,s,t)) 
              {
                        f[i]=1;
                        total--;
              }
    }
    system("pause");
}
2013-07-25 00:09
cddazao
Rank: 2
来 自:四川
等 级:论坛游民
帖 子:46
专家分:25
注 册:2013-2-12
收藏
得分:0 
回复 4楼 thematrix123
六次是有点靠运气,但一般而言不用破解十次也是可以推出的
2013-07-25 00:21
thematrix123
Rank: 2
等 级:论坛游民
帖 子:8
专家分:52
注 册:2013-7-10
收藏
得分:0 
回复 5楼 cddazao
我自己试了一下,平均就是7-8次左右
2013-07-25 00:22
cddazao
Rank: 2
来 自:四川
等 级:论坛游民
帖 子:46
专家分:25
注 册:2013-2-12
收藏
得分:0 
回复 4楼 thematrix123
代码看着好费劲啊
2013-07-25 00:23
cddazao
Rank: 2
来 自:四川
等 级:论坛游民
帖 子:46
专家分:25
注 册:2013-2-12
收藏
得分:0 
回复 6楼 thematrix123
嗯,差不多了
2013-07-25 00:23
快速回复:数字控们有福啦,进来瞧一瞧啊
数据加载中...
 
   



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

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