吸血鬼數字是指位數為偶數的數字,可以由一對數字相乘而得到,
而這對數字各包含乘積的一半位數的數字,其中從最初的數字中選取
的數字可以任意排序。以兩個0結尾的數字是不允許的,例如,下列
數字都是「吸血鬼」數字:
1260 = 21 * 60
1827 = 21 * 87
2187 = 27 * 81
下面是我寫的關於求出所有四位吸血鬼數字的**,請大家看看有沒有問題,或者有沒有更加高效的演算法。
#include
#include
#include
int compare(const char* a,const char* b)
else if(*a<*b)
else
}void search()
;char buf2[5]=;
char buf3[3]=;
for(i=10;i<100;i++)
itoa(temp,buf1,10);
itoa(i,buf2,10);
itoa(j,buf3,10);
strcat(buf2,buf3);
qsort(buf1,4,1,compare);
qsort(buf2,4,1,compare);
if(buf1[0]==buf2[0]&&buf1[1]==buf2[1]&&buf1[2]==buf2[2]&&buf1[3]==buf2[3])}}
}int main()
吸血鬼數字
吸血鬼數字是指位數為偶數的數字,可以由一對數字相乘而得到,而這對數字各包含乘積的一半位數的數字,其中從最初的數字中選取的數字可以任意排序。以兩個0結尾的數字是不允許的,例如,下列數字都是 吸血鬼 數字 1260 21 60 1827 21 87 2187 27 81 1994年柯利弗德 皮寇弗在us...
吸血鬼數字
吸血鬼數字指的是位數為偶數的數字,可以由一對數字相乘而得到,而這對數字則各包含乘積一般位數的數字,其中從最初的數字中選取的數字可以任意排序。以兩個0結尾的數字是不允許的,例如下面的吸血鬼數字 1260 21 x 60 1827 21 x 87 2187 27 x 81 下面的演算法,是找出4位數的所...
吸血鬼數字
關於吸血鬼數 寫道若 合成數 v 有偶數個位n 且是 n 2 個位的正整數 x 和 y 的積,而且 x 和 y 不是同時以0為個位數,組成 x 和 y 的數字,剛好就是 v 的數字,那麼 v 就是 吸血鬼數 vampire number 而 x 和 y 則稱為 尖牙 例如1260是吸血鬼數,21和6...