四位吸血鬼數字

2021-08-31 09:11:27 字數 778 閱讀 8648

吸血鬼數字是指位數為偶數的數字,可以由一對數字相乘而得到,

而這對數字各包含乘積的一半位數的數字,其中從最初的數字中選取

的數字可以任意排序。以兩個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...