http://acm.hdu.edu.cn/showproblem.php?pid=1271暴力的話一定超時(shí),從n/2枚舉到n,還要去掉其中一個(gè)數(shù)字
所以想下其他辦法
先立等式
A+B=N條件的信息只有N還有A和B的不確定關(guān)系
找到這個(gè)關(guān)系就能算出A和B
因?yàn)锽是A去掉中間一個(gè)數(shù)字出來的
所以我吧A表示成
A=a*10^(x+1) + b*10^x +c【b代表的是去掉的數(shù)字】這樣的話B就是
B=a*10^x+c所以N就等于
N=a*11*10^x+b*10^x+2*c而c一定是n的后邊若干位數(shù)字處以2得到的結(jié)果
比如說152
c就可能是0/2=0 2/2=1 12/2=6 52/2=26 152/2 = 76
然后N減去2*c后就是a*11*10^x+b*10^x,再除以10^x得到
a*11+b
因?yàn)閎是一位的數(shù)0~9所以可以進(jìn)行枚舉,然后得到的數(shù)字看看是不是符合條件
保存在數(shù)組里
排序,輸出,OVER~
posted on 2009-02-11 23:06
shǎ崽 閱讀(768)
評(píng)論(8) 編輯 收藏 引用