Pagini recente » Cod sursa (job #1795413) | Cod sursa (job #2586493) | Cod sursa (job #1944476) | Cod sursa (job #587627) | Cod sursa (job #1709614)
#include <cstdio>
#include <algorithm>
const int SIZE = 1e3 + 5;
const int MOD = 2e6 + 3;
const int INFI = 0x3f3f3f3f;
int dp[SIZE][SIZE], n, m, c; struct point{ int x, y; } p[SIZE];
int fact[SIZE * SIZE * 2], inv[SIZE * SIZE * 2];
inline int gcd( int a, int b, int &x, int &y ) {
if( !b ) {
x = 1;
y = 0;
return a;
} else {
int x1, y1, d;
d = gcd( b, a % b, x1, y1 );
x = y1;
y = x1 - (a / b) * y1;
return d;
}
return -1;
}
inline int inverse( int a, int b ) {
int x, y, d;
d = gcd( a, b, x, y );
if( x < 0 )
x = b + (x % b);
return x;
}
int comb( int n, int k ) {
return ( 1LL * fact[n] * inv[k] * inv[n - k] ) % MOD;
}
int main( int argc, const char *argv[] ) {
freopen( "padure2.in" , "r", stdin );
freopen( "padure2.out", "w", stdout );
fact[0] = 1;
for( int i = 1; i < MOD / 2; i ++ ) {
fact[i] = (fact[i - 1] * 1LL * i) % MOD;
inv[i] = inverse( fact[i], MOD );
}
printf( "0\n" );
return 0;
}