主题:我还有一天就复赛了,快点帮我!!!
Matodied
[专家分:7560] 发布于 2007-05-12 17:02:00
这是我们区2006年的试题:
有n个数分别是1-n,现在要求取一些数,要求:
(1)每个数只能取一次(也可以不取)。
(2)取出的数和它们中某些的和应该能表示出1-n之间所有的数。
(3)要求取出的数的个数尽可能少。
输入:n
输出:2个数,至少要取的数的个数和不同的方案总数。
如:输入6
输出 3 2(取1、2、3或者取1、2、4)
回复列表 (共16个回复)
沙发
ninke [专家分:60] 发布于 2007-05-13 09:50:00
现在的题目都像这样,叙述不清。
板凳
Matodied [专家分:7560] 发布于 2007-05-13 09:51:00
2楼的,别说闲话,有本事把这个题做出来!!!
3 楼
&佑慧妹妹& [专家分:660] 发布于 2007-05-13 10:19:00
Matodied,这道题可以用砝码问题的思路。程序我还在思考。
4 楼
Matodied [专家分:7560] 发布于 2007-05-13 10:31:00
楼上的,你把程序最好也发上来,快点!!!!
5 楼
moz [专家分:37620] 发布于 2007-05-13 11:01:00
现在出题目的人文化水平越来越低了,
我来揣摩翻译一下,
给出一个自然数N,
取不重复的,能够以和的形式表示出1-N的所有自然数的,最少个数的自然数组合。
求最少个数和能有几种取法。
6 楼
moz [专家分:37620] 发布于 2007-05-13 11:23:00
其實最快的組合當然是這樣的:
1,2,4,8,16,32,64,128,256.......
最少个数按照这样的方法很容易的就得到了,但要找到有几种替代方案……
7 楼
&佑慧妹妹& [专家分:660] 发布于 2007-05-13 11:26:00
moz,您最好把程序发上来,借我参考一下,我刚刚编了个程序,输入6,它输出48,66
8 楼
&佑慧妹妹& [专家分:660] 发布于 2007-05-13 11:27:00
快点,快来不及了
9 楼
moz [专家分:37620] 发布于 2007-05-13 11:44:00
input n
for i=1 to 10
if n<=2^i then exit for
next
print i-1
这是个数.至于取法数,
我没想到要怎么算.
10 楼
Matodied [专家分:7560] 发布于 2007-05-13 16:10:00
佑慧妹妹,我知道我的成绩了,初赛76分,复赛72分,总分148分.
你的成绩呢?最好也发上来.
我来回复