結果

問題 No.420 mod2漸化式
ユーザー butsurizuki
提出日時 2016-11-22 16:45:39
言語 C90
(gcc 12.3.0)
結果
AC  
実行時間 1 ms / 1,000 ms
コード長 511 bytes
コンパイル時間 370 ms
コンパイル使用メモリ 21,632 KB
実行使用メモリ 5,248 KB
最終ジャッジ日時 2024-12-24 13:05:55
合計ジャッジ時間 1,311 ms
ジャッジサーバーID
(参考情報)
judge4 / judge2
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 1
other AC * 35
権限があれば一括ダウンロードができます
コンパイルメッセージ
main.c: In function ‘main’:
main.c:24:9: warning: ignoring return value of ‘scanf’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
   24 |         scanf("%d",&x);
      |         ^~~~~~~~~~~~~~

ソースコード

diff #

#include <stdio.h>
#define K 2147483647

unsigned long long int nCr(int n,int r){
	if(n < r){return 0;}
	else if(n < 0 || r < 0){return 0;}
	int i,j,c[64] = {0};
	unsigned long long int t = 1;
	for(i = 2;i <= r;i++){c[i] = 1;}
	for(i = n;i >= n-r+1;i--){
		t*=i;
		for(j = 2;j <= r;j++){
			if(c[j]){
				if(!(t%j)){t/=j;c[j] = 0;}
			}
		}
	}
	return t;
}

int main(void) {
	int x;
	unsigned long long int r1,r2;
	scanf("%d",&x);
	r1 = nCr(31,x);
	r2 = nCr(30,x-1);
	printf("%llu %llu\n",r1,K*r2);
	return 0;
}
0