Java-84个字节
(a,l)->{int s=0;for(byte c:a.getBytes())s+=Math.pow(c-48,l);return a.equals(""+s);};
非lambda版本:101字节:
boolean n(String a,int l){int s=0;for(byte c:a.getBytes())s+=Math.pow(c-48,l);return a.equals(""+s);}
这样称呼:
interface X {
boolean n(String a, int l);
}
static X x = (a,l)->{int s=0;for(byte c:a.getBytes())s+=Math.pow(c-48,l);return a.equals(""+s);};
public static void main(String[] args) {
System.out.println(n("153",3));
System.out.println(n("1634",4));
System.out.println(n("123",3));
System.out.println(n("654",3));
}
返回值:
true
true
false
false
True
的是这样的数字还可以,但是如果不是,则输出其他任何内容(在这种情况下为数字本身)可以吗?