给定一个整数 nnn
求有多少对非负整数 (x,y)(x,y)(x,y) 满足 x+y=x⊕yx+y=x \oplus yx+y=x⊕y 且 x+y≤nx+y\le nx+y≤n
模 109+710^9+7109+7
当 nnn 以二进制字符串的形式给出时,∣n∣≤107|n| \le 10^7∣n∣≤107
如何优雅地做