Mai intai trebuie sa te autentifici.
Cod sursa(job #3362921)
| Utilizator | Data | 13 august 2026 09:55:58 | |
|---|---|---|---|
| Problema | Dirichlet | Scor | 100 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva de probleme | Marime | 0.64 kb |
#include <fstream>
using namespace std;
ifstream f("dirichlet.in");
ofstream g("dirichlet.out");
int n;
const int MOD=9999991;
int powlg(int a,int b)
{
int val=1;
while(b)
{
if(b%2)
val=1ll*val*a%MOD;
b/=2;
a=1ll*a*a%MOD;
}
return val%MOD;
}
int comb(int n,int k)
{
if(k>n-k) k=n-k;
int c=1,f=1;
for(int i=1; i<=k; i++)
{
c=1ll*c*(n-i+1)%MOD;
f=1ll*f*i%MOD;
}
c=1ll*c*powlg(f,MOD-2)%MOD;
return c;
}
int main()
{
f>>n;
int val=comb(n+n,n);
int inv=powlg(n+1,MOD-2);
g<<1ll*val*inv%MOD;
return 0;
}
