結果
| 問題 |
No.474 色塗り2
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2016-12-25 10:38:31 |
| 言語 | C90 (gcc 12.3.0) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 596 bytes |
| コンパイル時間 | 1,161 ms |
| コンパイル使用メモリ | 21,376 KB |
| 実行使用メモリ | 24,876 KB |
| 最終ジャッジ日時 | 2024-12-14 19:02:32 |
| 合計ジャッジ時間 | 673 ms |
|
ジャッジサーバーID (参考情報) |
judge4 / judge3 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 1 |
| other | AC * 1 WA * 3 |
コンパイルメッセージ
main.c:5:5: warning: built-in function ‘pow’ declared as non-function [-Wbuiltin-declaration-mismatch]
5 | int pow[2000000];
| ^~~
main.c: In function ‘main’:
main.c:10:9: warning: ignoring return value of ‘scanf’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
10 | scanf("%ld",&t);
| ^~~~~~~~~~~~~~~
main.c:12:17: warning: ignoring return value of ‘scanf’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
12 | scanf("%ld %ld %ld",&a,&b,&c);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ソースコード
#include<stdio.h>
const long mod=1048576;
long kai[2000000];
int pow[2000000];
int main(){
long t,e,i=0;
long a,b,c,d;
kai[0]=1;
scanf("%ld",&t);
for(;t>0;t--){
scanf("%ld %ld %ld",&a,&b,&c);
if(c%2==0){
printf("0\n");
}else{
for(;i<b+c-1;i++){
if(i%2==0){
kai[i+1]=kai[i]*(i+1)%mod;
pow[i+1]=pow[i];
}else{
kai[i+1]=kai[i];
pow[i+1]=pow[i]+1;
}
}
d=(kai[b+c-1]/kai[b]/kai[c-1])*c%mod;
e=pow[b+c-1]-pow[b]-pow[c-1];
d=d << e;
d=(d+a-1)%mod;
if((d&a)==a){
printf("1\n");
}else{
printf("0\n");
}
}
}
return 0;
}