原理:a^b=a^(Binary(b))
例如: 2^3=2^(11)=2^(10+01)=(2^10)*(2^01); 而二进制中每后一位的权重都是前一位的2倍,故(2^10)=(2^01)*(2^01)。
#include<bits/stdc++.h>
using namespace std;
long long arr[100];
int main(){
long long num;
long long val,temp1,temp2;
while(scanf("%lld%lld",&num,&val)!=EOF&&num!=0