显示原始代码
#include <stdio.h>
#define MOD 1000000007
long long power(long long base, long long exp) {
long long result = 1;
while (exp > 0) {
if (exp % 2 == 1) {
result = (result * base) % MOD;
}
base = (base * base) % MOD;
exp /= 2;
}
return result;
}
long long fac(long long n) {
if (n == 0)
return 1;
long long result = 1;
for (long long i = 1; i <= n; ++i) {
result = (result * i) % MOD;
}
return result;
}
long long C(long long n, long long m) {
long long numerator = fac(n);
long long denominator = (fac(n - m) * fac(m)) % MOD;
long long inverse_denominator = power(denominator, MOD - 2);
return (numerator * inverse_denominator) % MOD;
}
long long B(long long n) {
long long res = 0;
if (n == 0)
return 1;
for (long long i = 0; i < n; ++i) {
res = (res + (C(n - 1, i) * B(i)) % MOD) % MOD;
}
return res;
}
int main() {
int T;
scanf("%d", &T);
long long res[T];
long long n;
for (int i = 0; i < T; ++i) {
scanf("%lld", &n);
res[i] = B(n);
}
for (int i = 0; i < T; ++i) {
printf("%lld\n", res[i] % 95041567);
}
return 0;
}