数学建模社区-数学中国

标题: 帮看看这个问题,给个算法思路吧 [打印本页]

作者: candid    时间: 2004-11-28 20:57
标题: 帮看看这个问题,给个算法思路吧
<>有关整数变换问题,f(i)=3i;g(i)=i/2 (g(i)为i除2下取整)。对于给定的两个整数n,m,用最少的次数将n变换为m,如4=gfgg(15);</P>
作者: 布赖    时间: 2004-12-18 00:34
首先,n一定可变为m?
作者: fewrains    时间: 2006-1-3 01:08
<>    设初始值为N。</P>
! b2 P: p0 B9 ?$ m<>    一个数经过一次变换后,可能出现的两个值称为N的子代。如是/2得到,标记为0,如是*3得到,标记为1。</P>
2 w/ Q3 H, _7 ^<>    N的子代为0,1;</P>( I: l* P; m: H/ E
<>    N的子代的子代为00 01 10 11;</P>
, k$ y5 \, r: Y' z) x8 ?/ g<>    N的子代的子代的子代为000 001 010 011 100 101 110 111;</P>
1 e2 M. \, [8 R- B8 i<>    ……</P>
2 ?5 c* A; q! v4 O5 N<>    如果在前面得到的二进制数字前面加上一个数字1,再转代为十进制,那就是从2开始的自然数序列。</P>
" c7 z# L- v! R7 U' D  \<>    然后……还有什么难的?编程吧!一个一个地计算,如果只想得到一个解,那在得到第一个等于M的后代后停止。如果想得到所有的最优解,在得到第一个等于M的后代后,设置自然数序列的上限。最后是提取解相对应的二进制数,从最左边的1右边的那个数开始,0代表/2,1代表*3。</P>5 ^( V0 s9 ^. N
<>    </P>
作者: kmpop2000    时间: 2006-11-26 16:43

作者: chj1983wd    时间: 2006-11-29 16:08
晕,没看懂二当家说的...好好消化下<div id="dictdiv" style="margin: 5px; background: yellow none repeat scroll 0%; position: absolute; left: 0pt; top: 0pt; z-index: 1000; font-family: arial; font-size: 13px; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; -moz-border-radius-topleft: 5px; -moz-border-radius-topright: 5px; -moz-border-radius-bottomright: 5px; -moz-border-radius-bottomleft: 5px; opacity: 0.9; display: none;"></div><div id="dictaudio"></div>
作者: chj1983wd    时间: 2006-11-29 16:11
gfgg 确实是4哦... 为什么! 明明是*3. 是不是gf 无论怎样都可以?<br/><div id="dictdiv" style="margin: 5px; background: yellow none repeat scroll 0%; position: absolute; left: 0pt; top: 0pt; z-index: 1000; font-family: arial; font-size: 13px; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; -moz-border-radius-topleft: 5px; -moz-border-radius-topright: 5px; -moz-border-radius-bottomright: 5px; -moz-border-radius-bottomleft: 5px; opacity: 0.9; display: none;"></div><div id="dictaudio"></div>
作者: chj1983wd    时间: 2006-11-29 16:33
是不是我理解错了. g( 15 ) = 7.对应二进制是 111. 而操作对应的是 0 . 怎么也不等啊~ ,望达人 KT 一下. <br/><div id="dictdiv" style="margin: 5px; background: yellow none repeat scroll 0%; position: absolute; left: 0pt; top: 0pt; z-index: 1000; font-family: arial; font-size: 13px; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; -moz-border-radius-topleft: 5px; -moz-border-radius-topright: 5px; -moz-border-radius-bottomright: 5px; -moz-border-radius-bottomleft: 5px; opacity: 0.9; display: none;"></div><div id="dictaudio"></div>




欢迎光临 数学建模社区-数学中国 (http://www.madio.net/) Powered by Discuz! X2.5