1 #include<iostream> 2 using namespace std; 3 const int MOD = 1e9 + 7; 4 long long ksm(long long a,long long b) {//快速幂 a ^ b b限定为自然数 5 long long res = 1; 6 while (b) { 7 if (b & 1) { 8 res = (res * a)%MOD; 9 } 10 b >>= 1; 11 a = a*a%MOD; 12 } 13 return res; 14 } 15 long long ksc(long long a,long long b) {//快速乘 a * b 限定a,b均为自然数 16 long long res = 0; 17 while (b) { 18 if (b & 1) { 19 res = (res +a)%MOD; 20 } 21 a =(a<<1)%MOD; 22 b >>= 1; 23 } 24 return res; 25 }