7楼zhenai
(点击这里放飞你的心情)
发表于 2007-12-12 11:41
显示全部帖子
再试试一般解:
1.
总数为2^(m+1)*x时
x = 1且m>=2 时,解为m-1次
其余情况下解为m次
2.
总数对质数n取模
2^m<n<2^m+1
当余数是奇数时,解为m
当余数是偶数时,累计次数m+1,然后对余数或当余数为零时对总数/n(或总数*2/n使对n的余数为奇数)重复步骤1、2,直至累计出解。
3.
综合各解取最小值
实际上就是把总数作质因数分解
2^(a+1)*3^b*5^c*7^d*11^e......
综合比较abcde...各值,当有零时则对该质因数取模。
例:
总数是3k+1时解为1次。
总数是3k+2时解为2次。(就是余2的解为零次)
总数是3k时解累计2次。
总数是5k+奇数、7k+奇数时解为2次。
总数是5k+偶数、7k+偶数时解累计3次。
总数是11k+奇数、13k+奇数时解为3次。
总数是11k+偶数、13k+偶数时解累计4次。.