如果不转换成字符串的话
形如以 2 开头, 之后跟任意多个 3 的十进制整数而且是个素数, 则它是猫扑素数. 如 2, 23, 233, 2333, 23333 都是猫扑素数, 而 233333 则不是, 它可以分解为 353 x 661.
各位有没有好的思路?
1
des OP 我的思路是先 log10 判断位数,再判断( input -( input mod 10^n )) mod 10^n
最后判断是否是素数 |
2
statm 2015-08-20 08:09:29 +08:00
|
5
statm 2015-08-20 08:18:15 +08:00 via iPhone
@des 这个只检查猫扑数。素数的代码一搜一大堆。
boolean isMopNumber (int i ) { if (i < 10 ) return i == 2; else return (i % 10 == 3 ) && isMopNumber (i / 10 ); } |
6
chunk 2015-08-20 09:16:12 +08:00
有意思,顶贴
|
7
wangjie 2015-08-20 09:28:46 +08:00
function is 猫扑素数($int ) {
for ($i=0;$<$int;$i+=1 ) { } } |
8
wangjie 2015-08-20 09:41:02 +08:00
按空格就发出来了 QAQ 好二啊
|
9
aheadlead 2015-08-20 10:02:44 +08:00
|
12
zhengnanlee 2015-08-20 10:16:07 +08:00
@aheadlead 太笨了吧用那个算法。。 2333 应该很有规律
|