帮看看这个问题,给个算法思路吧
<P>有关整数变换问题,f(i)=3i;g(i)=i/2 (g(i)为i除2下取整)。对于给定的两个整数n,m,用最少的次数将n变换为m,如4=gfgg(15);</P> 首先,n一定可变为m? <P> 设初始值为N。</P><P> 一个数经过一次变换后,可能出现的两个值称为N的子代。如是/2得到,标记为0,如是*3得到,标记为1。</P>
<P> N的子代为0,1;</P>
<P> N的子代的子代为00 01 10 11;</P>
<P> N的子代的子代的子代为000 001 010 011 100 101 110 111;</P>
<P> ……</P>
<P> 如果在前面得到的二进制数字前面加上一个数字1,再转代为十进制,那就是从2开始的自然数序列。</P>
<P> 然后……还有什么难的?编程吧!一个一个地计算,如果只想得到一个解,那在得到第一个等于M的后代后停止。如果想得到所有的最优解,在得到第一个等于M的后代后,设置自然数序列的上限。最后是提取解相对应的二进制数,从最左边的1右边的那个数开始,0代表/2,1代表*3。</P>
<P> </P> 顶 晕,没看懂二当家说的...好好消化下<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> 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> 是不是我理解错了. 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>
页:
[1]