几个java高手级应用题?求想法,不用鞋代码!!

来源:百度知道 编辑:UC知道 时间:2024/06/04 11:55:31
1. 在一个国家里,他们的货币由4种颜色9种重量组成(颜色y,b,r,g;重量是1-9);例如r3就是红色3重量;
这国家的货币还很奇怪,就只能由3个一样的颜色,重量,或者连速的重量(例如r1,b2,b3)才能用。
题目会给你date像(r1,b9,y6,g8,y3,b4,b2,y6,g7)
求他们能全部都用来买东西吗?可以掉乱循序。
我知道很难,麻烦。不过求你们帮帮手,就想法就是了。代码我写
http://zhidao.baidu.com/question/77614243.html
2楼你说的穷举是什么办法呢??我最大的问题就是混合的花。我请教你能写多点。
3楼你的建议可是hard code!如果有多种染色我就累死!!(:
2楼能多写点吗??

什么专业?

这个题应该是能达到随便给一组数据就可以算出多少种方式或者可不可以满足条件吧?

如果不考虑人工智能方式的话算法其实很简单,就是类似穷举的方式,当然不能用穷举,虽然现在机器性能比较高如果数据在某种情况下的话穷举可能造成死锁

没太详细考虑,因为你首先分成两种情况,一种是同色,另一种是连号,这样就可以分成三种花钱方式,一种是把钱按颜色花,一种是按号花,第三种当然是混合了,这样可以稍微简化问题,如果来了一组新数据先判断是否颜色可以是3的倍数,比如3个r,6个b,9个g之类,如果满足这种情况别的就不用判断了,同样连号也这样判断,这个如果不满足条件按就要进入混合了,混合就要用穷举了

首先还是判断是否满足最佳状态比如颜色可以按3的倍数,最后剩余的部分可以用号码法,然后反过来先判断号码法,在判断最后剩下的是否可以按照颜变法,把最优情况都排除了就可以穷举剩下的了,上述的公式啊特殊情况可以用一个xml类定义,这样将来如果你有更好的算法可以直接改xml而不用修改程序

先把所有的货币列出来,用质数代替,如:y1=2,y2=3,y3=5....三十多个,然后把所有可以使用的组合用货币的积表示:如y1,y2,y3=30,你给的date是三组,把三级对应的质数的积算出来,把可使用的组合也三组三组的把积算出来对比就是了。

这个国家真怪!