%I#13 2016年7月19日11:36:09
%S 0,3130456342096122672029157501137989458752304016015216609776,
%电话136622606520
%N对k进行数字运算,使k^2 XOR(k+1)^2是一个正方形,而k^2 XOR(k+2)^2也是一个正方,其中XOR是按位逻辑排他或运算符。
%C A221643的子序列。
%C猜想:序列是无限的。
%o(C)
%o#包括<stdio.h>
%o#include<数学.h>
%o int main(){
%o无符号长-长a,i,t;
%o表示(i=0;i<(1L<<32)-2++i){
%o a=(i*i)^((i+1)*(i+1));
%o t=平方(a);
%o如果(a!=t*t)继续;
%o a=(i*i)^((i+2)*(i+2));
%o t=平方(a);
%o如果(a!=t*t)继续;
%o打印(“%llu,”,i);
%o}(o)
%o返回0;
%o}(o)
%o(Java)
%o等级A224241{
%o静态公共BigInteger isqrt(最终BigIntiger n)
%o(o){
%o如果(n.compareTo(BigInteger.ZERO)<0)
%o抛出新的ArithmeticException(“负参数”+n.toString());
%o大整数x;
%o最终int bl=n.bitLength();
%o如果(bl>120)
%o x=n.右移(bl/2-1);
%o其他
%o(o){
%o最终双结果=Math.sqrt(n.doubleValue());
%o x=新的BigInteger(“”+Math.round(结果));
%o}(o)
%o最终的BigInteger二=新的BigInteger(“2”);
%o while(真)
%o个{
%o大整数x2=x.pow(2);
%o BigInteger xplus2=x.add(BigIntiger.ONE).pow(2);
%o如果(x2.compareTo(n)<=0&&xplus2.compareTo(n)>0)
%o返回x;
%o xplus2=xplus2.减法(x.shiftLeft(2));
%o if(xplus2.compareTo(n)<=0&x2.compareTo(n)>0)
%o返回x.subtract(BigInteger.ONE);
%o xplus2=x2.减法(n).除法(x).除数(2);
%o x=x减去(xplus2);
%o}(o)
%o}(o)
%o静态公共void main(String[]argv)
%o(o){
%o for(BigInteger k=BigIntiger.ZERO;;k=k.add(BigInteger.ONE))
%o(o){
%o最终BigInteger k2=k.pow(2);
%o最终BigInteger kplus1=k.add(BigInteger.ONE);
%o最终BigInteger k12=kplus1.pow(2);
%o最终BigInteger xor1=k2.xor(k12);
%o最终的BigInteger roo1=isqrt(xor1);
%o if(roo1.pow(2).compareTo(xor1)==0)
%o个{
%o最终的BigInteger k22=kplus1.add(BigIntiger.ONE).pow(2);
%o最终BigInteger xor2=k2.xor(k22);
%o最终BigInteger roo2=isqrt(xor2);
%o if(roo2.pow(2).compareTo(xor2)==0)
%o System.out.println(k);
%o}(o)
%o}(o)
%o}(o)
%o}(o)
%o//R.J.Mathar_,2013年4月25日
%Y参考A221643。
%K nonn,基数,多,少
%O 1,2号机组
%A _Alex Ratushnyak,2013年4月1日
|