| 网站首页 | 业界新闻 | 群组 | 交易 | 人才 | 下载频道 | 博客 | 代码贴 | 编程论坛
共有 1390 人关注过本帖, 1 人收藏
标题:请教一道算法题
只看楼主 加入收藏
浅吟辄唱
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2018-3-9
结帖率:100%
  已结贴   问题点数:20  回复次数:22   
请教一道算法题
小明玩一个游戏,小明手上有一张牌,桌子上有六张牌,游戏规则是,求用最多的桌上卡牌与小明手中的卡牌进行加减乘除四则运算 最后使
果达到13.如小明卡牌是5,桌上卡牌是1 3 9 4 2 2,此题答案即5+1/3+9+4-2
即最多可容纳5张牌(此题不考乘除优先级,先到优先,桌上卡牌可重)。

从input.txt中读入数据        
5
1 3 9 4 2 2
往output.txt中写入数据   
5
5+1/3+9+4-2
2018-03-09 23:18
九转星河
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:长长久久
等 级:版主
威 望:50
帖 子:4972
专家分:13940
注 册:2016-10-22
  得分:0 
这个求最少的话可以用bfs算法,最多的话变通一下应该可以(但这样就相当于全部枚举了),所以应该用dfs写上来比较方便~
然后看了一下先6张牌枚举,不行就5张,这样可以确保是最多的~

[code]/*~个性签名:bug是什么意思?bug是看上去没有可能的东西实际上是有可能做到的 就是这样~2018-08-08更~*/[/code]
2018-03-10 10:35
浅吟辄唱
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2018-3-9
  得分:0 
回复 2楼 九转星河
用枚举的方法,检索出所有的满足结果的表达式,大神知道代码怎么写吗
2018-03-10 15:28
九转星河
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:长长久久
等 级:版主
威 望:50
帖 子:4972
专家分:13940
注 册:2016-10-22
  得分:0 
回复 3楼 浅吟辄唱
你那个案例数字是规定顺序的么,如果是就好弄一点,不是的话要另外处理了~
如果就只是符号位置不同,可以这样1234这四个数字分别代表加减乘除,用四进制进行枚举试试~

[code]/*~个性签名:bug是什么意思?bug是看上去没有可能的东西实际上是有可能做到的 就是这样~2018-08-08更~*/[/code]
2018-03-10 18:54
李晨经纪人
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:6
帖 子:175
专家分:848
注 册:2018-2-14
  得分:20 
为啥我的程序跑出来结果是 5+1*3-9+4-2+2   一共用6张牌,最多不是5张
2018-03-10 20:11
李晨经纪人
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:6
帖 子:175
专家分:848
注 册:2018-2-14
  得分:0 
附件: 您没有浏览附件的权限,请 登录注册
2018-03-10 20:20
浅吟辄唱
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2018-3-9
  得分:0 
回复 4楼 九转星河
是规定的,按给定的顺序
2018-03-10 20:40
浅吟辄唱
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2018-3-9
  得分:0 
回复 6楼 李晨经纪人
给的那个答案只是举个例子,不是正确的答案,答案就是6张牌
2018-03-10 20:41
浅吟辄唱
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2018-3-9
  得分:0 
回复 6楼 李晨经纪人
能不能教教我代码怎么写
2018-03-10 21:02
李晨经纪人
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:6
帖 子:175
专家分:848
注 册:2018-2-14
  得分:0 
回复 9楼 浅吟辄唱
等会我测试下我的代码有没有问题
2018-03-10 21:09







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

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