<script type="text/JavaScript"> </script> <script src="http://a.alimama.cn/inf.js" type="text/javascript"></script>
最开始,我尝试着用乘方来试探,比如用Math.Pow从0开始一直乘方下去,并加其和,直到小于y为止,可是这是个很荒谬的设计,结果当然有问题。
static string BuildString(long iNumber) { StringBuilder strResult =new StringBuilder(iNumber + "="); for (var i = iNumber.ToString().Length * 4; i >= 0; i--) { if ((iNumber - (long)Math.Pow(2, i)) >= 0) { iNumber = iNumber - (long)Math.Pow(2, i); strResult.Append("2^" + i.ToString() + "+"); } } strResult.Length--; return strResult.ToString(); } |
另外,心得后的心酸故事:
人常说,喜欢一个人,在一起很开心,爱一个人,不开心也想在一起。原话不知道怎么讲,反正是这个意思。我实现上面的y=2^n1+2^n2+……算法,其实就是想设计出下面这样一个公式来:
L + O + V + E = ABCXYYX + ABC*107 + ((AB) 2 + AC)*106 + XXY + X + Y + BC |
我曾经为了追求她,哄她开心,将L, O, V, E用我和她的手机号代入(我们俩每人两个手机,所以有四个号码),A=5,B=2, C=0,X=13,Y=14,分别代入:
134×××××××× + 138×××××××× + 137×××××××× + 189×××××××× = 5201314 + 520*107 + ((52) 2 + 50)*106 + 131314 + 13 + 14 + 20 |
等式成立,其实想对她表达我的用心和一生一世的爱,520*107足以超过“我爱你一万年”了。我仅用5,2,0,1,3,1,4和幂组成,来等于四个手机号之和(L,O,V,E)。
最后,只可惜,这是一个悲剧,用心良苦,最后还是难免遭受挫折。
转自:http://www.cnblogs.com/architect/archive/2009/03/04/1402823.html <script type="text/JavaScript"> </script> <script src="http://a.alimama.cn/inf.js" type="text/javascript"></script>