热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

凑24问题经典!!!

有4张牌,分别是10,10,4,4,请凑出24,在2分钟内给出答案!!!!!
有4张牌,分别是10,10,4,4,请凑出24,在2分钟内给出答案!!!!!

16 个解决方案

#1


(10*10-4)/4=24 
easy !

take a try 
7 7 3 3 .

#2


第一反应是
(7+7%3)*3=24
不知能不能用求余

#3


(3+3/7)*7

#4


then 1,1,1,1?

#5


1,1,1,1
这个好像是我出的题目啊

嘿嘿,该公布答案了

定义1为通常所用的6
然后全部加起来,呵呵

大家不要用臭鸡蛋砸我啊


前面这些题目都出过的(在某个贴子里)
:)

#6


呵呵,怎么都是24点的问题?!

半年前写过一个解24点问题的程序,可以列出所有解。上面所有问题都可以用这个程序得出的。
下面写源程序如下:

//-----------------------------------------------------------------------
//-------------24 POINTS GAME yiyuan------------
//-----------------------------------------------------------------------
# include 
# include 
# define Max 10
# define Min 0
void main()
{
int w,x,y,z;
register float a,b,c,d;
float i[5];
int f[34];
for(w=0;w<34;w++)
f[w]=1;
puts("\n24 POINTS GAME !\n");
do
{
    printf("Insert a,b,c,d: ");
scanf("%f,%f,%f,%f",&i[1],&i[2],&i[3],&i[4]);
if(i[1]>Min&&i[1]Min&&i[2]Min&&i[3]Min&&i[4] break;
puts("Sorry,the numbers must be in the range of 1 to 9 !!");    //需要改改,懒了。
}while(w++<36);
if(w==37)
{
puts("PROGRAMME END!!!");
exit(1);
}
for(w=1;w<5;w++)
for(x=1;x<5;x++)
{
if(x==w)
continue;
for(y=1;y<5;y++)
{
if(y==w||y==x)
continue;
for(z=1;z<5;z++)
{
if(z==w||z==x||z==y)
continue;
a=i[w];
b=i[x];
c=i[y];
d=i[z];
if(a+b+c+d==24&&f[0])
{
printf("%0.0f+%0.0f+%0.0f+%0.0f=24\n",a,b,c,d);
f[0]=0;
}
if(a+b+c-d==24&&f[1])
{
printf("%0.0f+%0.0f+%0.0f+%0.0f=24\n",a,b,c,d);
f[1]=0;
}
if(a*b*c*d==24&&f[2])
{
printf("%0.0f*%0.0f*%0.0f*%0.0f=24\n",a,b,c,d);
f[2]=0;
}
if(a*b*c/d==24&&f[3])
{
printf("%0.0f*%0.0f*%0.0f/%0.0f=24\n",a,b,c,d);
f[3]=0;
}
if(a*b/c/d==24&&f[4])
{
printf("%0.0f*%0.0f/%0.0f/%0.0f=24\n",a,b,c,d);
f[4]=0;
}
if((a+b)*(c+d)==24&&f[5])
{
printf("(%0.0f+%0.0f)*(%0.0f+%0.0f)=24\n",a,b,c,d);
f[5]=0;
}
if((a-b)*(c-d)==24&&f[6])
{
printf("(%0.0f-%0.0f)*(%0.0f-%0.0f)=24\n",a,b,c,d);
f[6]=0;
}
if((a+b)*(c-d)==24&&f[7])
{
printf("(%0.0f+%0.0f)*(%0.0f-%0.0f)=24\n",a,b,c,d);
f[7]=0;
}
if((a+b)*c+d==24&&f[8])
{
printf("(%0.0f+%0.0f)*%0.0f+%0.0f=24\n",a,b,c,d);
f[8]=0;
}
if((a+b)*c-d==24&&f[9])
{
printf("(%0.0f+%0.0f)*%0.0f-%0.0f=24\n",a,b,c,d);
f[9]=0;
}
if((a-b)*c+d==24&&f[10])
{
printf("(%0.0f-%0.0f)*%0.0f+%0.0f=24\n",a,b,c,d);
f[10]=0;
}
if((a-b)*c-d==24&&f[33])
{
printf("(%0.0f-%0.0f)*%0.0f-%0.0f=24\n",a,b,c,d);
f[33]=0;
}
if(a*b/c+d==24&&f[28])
{
printf("%0.0f*%0.0f/%0.0f+%0.0f=24\n",a,b,c,d);
f[28]=0;
}
if(a*b/c-d==24&&f[11])
{
printf("%0.0f*%0.0f/%0.0f-%0.0f=24\n",a,b,c,d);
f[11]=0;
}
if((a-b)*c*d==24&&f[12])
{
printf("(%0.0f-%0.0f)*%0.0f*%0.0f=24\n",a,b,c,d);
f[12]=0;
}
if((a+b)*c*d==24&&f[13])
{
printf("(%0.0f+%0.0f)*%0.0f*%0.0f=24\n",a,b,c,d);
f[13]=0;
}
if((a+b)*c/d==24&&f[14])
{
printf("(%0.0f+%0.0f)*%0.0f/%0.0f=24\n",a,b,c,d);
f[14]=0;
}
if((a-b)*c/d==24&&f[15])
{
printf("(%0.0f-%0.0f)*%0.0f/%0.0f=24\n",a,b,c,d);
f[15]=0;
}
if((a+b+c)*d==24&&f[16])
{
printf("(%0.0f+%0.0f+%0.0f)*%0.0f=24\n",a,b,c,d);
f[16]=0;
}
if((a+b-c)*d==24&&f[17])
{
printf("(%0.0f+%0.0f-%0.0f)*%0.0f=24\n",a,b,c,d);
f[17]=0;
}
if((a-b-c)*d==24&&f[18])
{
printf("(%0.0f-%0.0f-%0.0f)*%0.0f=24\n",a,b,c,d);
f[18]=0;
}
if((a*b+c)*d==24&&f[19])
{
printf("(%0.0f*%0.0f+%0.0f)*%0.0f=24\n",a,b,c,d);
f[19]=0;
}
if((a/b+c)*d==24&&f[29])
{
printf("(%0.0f/%0.0f+%0.0f)*%0.0f=24\n",a,b,c,d);
f[29]=0;
}
if((a*b-c)*d==24&&f[20])
{
printf("(%0.0f*%0.0f-%0.0f)*%0.0f=24\n",a,b,c,d);
f[20]=0;
}
if((a/b-c)*d==24&&f[30])
{
printf("(%0.0f/%0.0f-%0.0f)*%0.0f=24\n",a,b,c,d);
f[30]=0;
}
if((a*b+c)/d==24&&f[21])
{
printf("(%0.0f*%0.0f+%0.0f)/%0.0f=24\n",a,b,c,d);
f[21]=0;
}
if((a*b-c)/d==24&&f[22])
{
printf("(%0.0f*%0.0f-%0.0f)/%0.0f=24\n",a,b,c,d);
f[22]=0;
}
if(a*b+c+d==24&&f[23])
{
printf("%0.0f*%0.0f+%0.0f+%0.0f=24\n",a,b,c,d);
f[23]=0;
}
if(a*b+c-d==24&&f[24])
{
printf("%0.0f*%0.0f+%0.0f-%0.0f=24\n",a,b,c,d);
f[24]=0;
}
if(a*b-c-d==24&&f[25])
{
printf("%0.0f*%0.0f-%0.0f-%0.0f=24\n",a,b,c,d);
f[25]=0;
}
if(a*b+c*d==24&&f[26])
{
printf("%0.0f*%0.0f+%0.0f*%0.0f=24\n",a,b,c,d);
f[26]=0;
}
if(a*b-c*d==24&&f[27])
{
printf("%0.0f*%0.0f-%0.0f*%0.0f=24\n",a,b,c,d);
f[27]=0;
}
if((a-b/c)*d==24&&f[31])
{
printf("(%0.0f-%0.0f/%0.0f)*%0.0f=24\n",a,b,c,d);
f[31]=0;
}
if((a+b/c)*d==24&&f[32])
{
printf("(%0.0f+%0.0f/%0.0f)*%0.0f=24\n",a,b,c,d);
f[32]=0;
}
}
}
}
for(w=0;w<34;w++)
if(!f[w])
i[1]=0;
if(i[1])
puts("Sorry,no answer!!!");

}


呵呵,这里好像一行不够长,粘贴过去就应该好了。

试试吧!



#7


哦?原来够长!这里的回复框似乎有问题?!

#8


搞這么復雜,用個逆波蘭就可以了。

#9


呵呵,具体说说。我是菜鸟,不明白。

我只会用穷举。。。。。。。。。^_^

#10


的确太复杂了。
可以把运算符放入循环中。

#11


????我真是菜鸟,大家能不能够都具体说说,这个程序该怎么编?

大概写几行代码,示范一个,好吗?^_^

#12


我在红旗linux面试时是(5,5,5,1)凑24,我不会;
有会的吗?

#13


to invaders:
      呵呵,我不是提供程序源代码了吗?你不会试试吗?
      在其它高手不肯提供好方法的前提下,我的方法还是可行的!:)

      程序运行结果:(5-1/5)*5=24。没有错吧?!^_^

#14


其实,当时写这个程序时想到用别的方法,而不是穷举。不过,因为最后得出的结果需要考虑括号什么的,很麻烦,所以还是放弃了。而正好穷举的可能也并不是很多,所以就用穷举了。不知各位高手是否确实有可行的算法。望指教!

#15


5*(5-1/5)=24

#16


壓死你; 

三個類;

const int MAXSIZE=50;

class CStack  
{
private:
double StackList[MAXSIZE];
int Top;
CString strErr;
public:
void ClearStack();
CString GetError();
int StackIsFull();
int StackIsEmpty();
double Peek();
double Pop();
int Push(const double item);
CStack();
virtual ~CStack();
};


class CRPNCalculator  
{
private:
int InputOperand(double dopt1);
int GetOperands(double& dopt1,double& dopt2);
int Calculator(char cOperator);
CString strOperation;
CString strErr;
CStack Stack;
double dResult;
public:
void SetOperation(CString strOption);
double GetResult();
CString GetError();
int Run();
CRPNCalculator(CString strOpt);
CRPNCalculator();
virtual ~CRPNCalculator();

};


const int MAXCOUNT=10;
class CEightThree  
{
public:
CString GetResult();
int Run();
void SetData(double *dInput,int iCount,double dResult);
CEightThree();
virtual ~CEightThree();
static const char m_caOperator[4];
private:
void Change(int iRPN);
CRPNCalculator m_oRPNCalculator;
CString GetRPNStr(int iRPN);
int Calculate(int iRPN);
int CheckIn(int iCheck,int iCount);
int GetMember(int iSeries,int iNo,int iRPN);
double m_daInput[MAXCOUNT];
double m_dResult;
double RESULT;
int m_iCount;
char m_caRPN[30];
CString m_strRPN;
bool m_bEnd;
};


code太多.

推荐阅读
  • 如何自行分析定位SAP BSP错误
    The“BSPtag”Imentionedintheblogtitlemeansforexamplethetagchtmlb:configCelleratorbelowwhichi ... [详细]
  • SpringBoot uri统一权限管理的实现方法及步骤详解
    本文详细介绍了SpringBoot中实现uri统一权限管理的方法,包括表结构定义、自动统计URI并自动删除脏数据、程序启动加载等步骤。通过该方法可以提高系统的安全性,实现对系统任意接口的权限拦截验证。 ... [详细]
  • 向QTextEdit拖放文件的方法及实现步骤
    本文介绍了在使用QTextEdit时如何实现拖放文件的功能,包括相关的方法和实现步骤。通过重写dragEnterEvent和dropEvent函数,并结合QMimeData和QUrl等类,可以轻松实现向QTextEdit拖放文件的功能。详细的代码实现和说明可以参考本文提供的示例代码。 ... [详细]
  • Java容器中的compareto方法排序原理解析
    本文从源码解析Java容器中的compareto方法的排序原理,讲解了在使用数组存储数据时的限制以及存储效率的问题。同时提到了Redis的五大数据结构和list、set等知识点,回忆了作者大学时代的Java学习经历。文章以作者做的思维导图作为目录,展示了整个讲解过程。 ... [详细]
  • JavaSE笔试题-接口、抽象类、多态等问题解答
    本文解答了JavaSE笔试题中关于接口、抽象类、多态等问题。包括Math类的取整数方法、接口是否可继承、抽象类是否可实现接口、抽象类是否可继承具体类、抽象类中是否可以有静态main方法等问题。同时介绍了面向对象的特征,以及Java中实现多态的机制。 ... [详细]
  • eclipse学习(第三章:ssh中的Hibernate)——11.Hibernate的缓存(2级缓存,get和load)
    本文介绍了eclipse学习中的第三章内容,主要讲解了ssh中的Hibernate的缓存,包括2级缓存和get方法、load方法的区别。文章还涉及了项目实践和相关知识点的讲解。 ... [详细]
  • 本文讨论了一个关于cuowu类的问题,作者在使用cuowu类时遇到了错误提示和使用AdjustmentListener的问题。文章提供了16个解决方案,并给出了两个可能导致错误的原因。 ... [详细]
  • Python正则表达式学习记录及常用方法
    本文记录了学习Python正则表达式的过程,介绍了re模块的常用方法re.search,并解释了rawstring的作用。正则表达式是一种方便检查字符串匹配模式的工具,通过本文的学习可以掌握Python中使用正则表达式的基本方法。 ... [详细]
  • 本文详细介绍了Spring的JdbcTemplate的使用方法,包括执行存储过程、存储函数的call()方法,执行任何SQL语句的execute()方法,单个更新和批量更新的update()和batchUpdate()方法,以及单查和列表查询的query()和queryForXXX()方法。提供了经过测试的API供使用。 ... [详细]
  • 个人学习使用:谨慎参考1Client类importcom.thoughtworks.gauge.Step;importcom.thoughtworks.gauge.T ... [详细]
  • 本文分享了一个关于在C#中使用异步代码的问题,作者在控制台中运行时代码正常工作,但在Windows窗体中却无法正常工作。作者尝试搜索局域网上的主机,但在窗体中计数器没有减少。文章提供了相关的代码和解决思路。 ... [详细]
  • 本文介绍了Redis的基础数据结构string的应用场景,并以面试的形式进行问答讲解,帮助读者更好地理解和应用Redis。同时,描述了一位面试者的心理状态和面试官的行为。 ... [详细]
  • 本文介绍了一种划分和计数油田地块的方法。根据给定的条件,通过遍历和DFS算法,将符合条件的地块标记为不符合条件的地块,并进行计数。同时,还介绍了如何判断点是否在给定范围内的方法。 ... [详细]
  • 本文介绍了为什么要使用多进程处理TCP服务端,多进程的好处包括可靠性高和处理大量数据时速度快。然而,多进程不能共享进程空间,因此有一些变量不能共享。文章还提供了使用多进程实现TCP服务端的代码,并对代码进行了详细注释。 ... [详细]
  • 动态规划算法的基本步骤及最长递增子序列问题详解
    本文详细介绍了动态规划算法的基本步骤,包括划分阶段、选择状态、决策和状态转移方程,并以最长递增子序列问题为例进行了详细解析。动态规划算法的有效性依赖于问题本身所具有的最优子结构性质和子问题重叠性质。通过将子问题的解保存在一个表中,在以后尽可能多地利用这些子问题的解,从而提高算法的效率。 ... [详细]
author-avatar
毛小猫TTN
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有