免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 4619 | 回复: 17
打印 上一主题 下一主题

有 A B C D E F G H I J K ... 等N个数 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2012-04-27 09:47 |只看该作者 |倒序浏览
本帖最后由 xiangsiyu21945 于 2012-04-27 13:51 编辑

有 A B C D E F G H I J K ... 等N个数字(字母取值范围是 1 到 9),列出在其中加如一个=号,任意多个加号组成一个等式的所有组合
       
像 AB + C + DEF = GH + I +J + K
或者A + B + CDE + FG = H + IJK

额,⊙﹏⊙b汗,求大家指点迷津,俺不会说话,谢谢啊!
************************************************************
就是从键盘输入N个数,每次输入的数是1到9之间的数,然后在 输入的N 个数之间 加一个 =  号,【若干】 + 号,组成一个【等式】,列出能组成 等式的组合
************************************************************

楼下说 = 号的位置 在1 到N/2 之间,说明 理解错题意了:
比如输入: 1  1  1  2  2  3  6  7                 1+1+1+2+2+3 = 6+7

论坛徽章:
0
2 [报告]
发表于 2012-04-27 09:50 |只看该作者
用C语言编写 或 给出思路


这口气....你是来给大家面试的吗?

论坛徽章:
0
3 [报告]
发表于 2012-04-27 09:53 |只看该作者
额,我错了,我是来求大家指点的,指点一下思路

论坛徽章:
0
4 [报告]
发表于 2012-04-27 10:02 |只看该作者
本帖最后由 frank529 于 2012-04-27 10:03 编辑

n个数,有n-1个间隔,放1个=号,0 ~ (n-2)个+号,穷举构造符号数组,分析等式是否成立

论坛徽章:
1
2015年迎新春徽章
日期:2015-03-04 09:49:45
5 [报告]
发表于 2012-04-27 10:04 |只看该作者
回复 4# frank529

这个问题明显穷举不行,指数级的复杂度。{:3_195:}
看看有没有啥好的dp算法
   

论坛徽章:
0
6 [报告]
发表于 2012-04-27 10:08 |只看该作者
从中间开始搞起

先把等号放最中间,发现左边大就把等号往左边移,反之则往右边动

直到移动到两个边界


论坛徽章:
0
7 [报告]
发表于 2012-04-27 10:15 |只看该作者
本帖最后由 x5miao 于 2012-04-27 10:15 编辑

什么叫A B C D等N个数字?字母的取值范围怎么是1至9

论坛徽章:
0
8 [报告]
发表于 2012-04-27 10:19 |只看该作者
关键还包括了  AB + CD = E + F 这种类型,  1 ,2,3,4,4,6,  (  12 + 34 = 46)   ,现在 头都大了

论坛徽章:
0
9 [报告]
发表于 2012-04-27 13:02 |只看该作者
提供一个很粗糙的思路哈,也是最笨的方法:
“=”所在的位置为1~N/2
for(“=”号位置){
    当等号位置在n时,“=”前面有n个数字;
    使用n个数字、任意个+号,组合出等式
}

这样,问题就变为:怎么把n个数字用k个“+”号连接起来

论坛徽章:
1
2015年迎新春徽章
日期:2015-03-04 09:49:45
10 [报告]
发表于 2012-04-28 09:25 |只看该作者
这个问题有个重要的剪枝办法:等号左右两边除以3的余数必须相等。也就是等号两边的数字加起来除以3的余数必须相等。

剪枝是次要的,主要还是那个dp
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP