提出 #1398395
ソースコード 拡げる
#include <stdio.h>
#include <stdlib.h>
#define Mod (1000000000+7)
int main(void)
{
int n, m;
long long ans = 1;
scanf("%d %d", &n, &m);
if(abs(n-m) > 1){
printf("0\n");
return 0;
}
if(n == m){
while(n != 1){
ans *= n;
ans %= Mod;
n--;
}
printf("%d\n", (ans * ans * 2)%Mod);
}
else{
while(n != 1){
ans *= n;
n--;
ans %= Mod;
}
while(m != 1){
ans *= m;
m--;
ans %= Mod;
}
printf("%d\n", ans%Mod);
}
return 0;
}
提出情報
| 提出日時 | |
|---|---|
| 問題 | C - Reconciled? |
| ユーザ | Lionking07 |
| 言語 | C (GCC 5.4.1) |
| 得点 | 300 |
| コード長 | 558 Byte |
| 結果 | AC |
| 実行時間 | 1 ms |
| メモリ | 128 KiB |
コンパイルエラー
./Main.c: In function ‘main’:
./Main.c:20:12: warning: format ‘%d’ expects argument of type ‘int’, but argument 2 has type ‘long long int’ [-Wformat=]
printf("%d\n", (ans * ans * 2)%Mod);
^
./Main.c:33:12: warning: format ‘%d’ expects argument of type ‘int’, but argument 2 has type ‘long long int’ [-Wformat=]
printf("%d\n", ans%Mod);
^
./Main.c:8:3: warning: ignoring return value of ‘scanf’, declared with attribute warn_unused_result [-Wunused-result]
scanf("%d %d", &n, &m);
^
ジャッジ結果
| セット名 | Sample | All | ||||
|---|---|---|---|---|---|---|
| 得点 / 配点 | 0 / 0 | 300 / 300 | ||||
| 結果 |
|
|
| セット名 | テストケース |
|---|---|
| Sample | s1.txt, s2.txt, s3.txt, s4.txt |
| All | 01.txt, 02.txt, 03.txt, 04.txt, 05.txt, 06.txt, 07.txt, 08.txt, 09.txt, 10.txt, 11.txt, 12.txt, s1.txt, s2.txt, s3.txt, s4.txt |
| ケース名 | 結果 | 実行時間 | メモリ |
|---|---|---|---|
| 01.txt | AC | 0 ms | 128 KiB |
| 02.txt | AC | 1 ms | 128 KiB |
| 03.txt | AC | 0 ms | 128 KiB |
| 04.txt | AC | 1 ms | 128 KiB |
| 05.txt | AC | 1 ms | 128 KiB |
| 06.txt | AC | 0 ms | 128 KiB |
| 07.txt | AC | 0 ms | 128 KiB |
| 08.txt | AC | 0 ms | 128 KiB |
| 09.txt | AC | 1 ms | 128 KiB |
| 10.txt | AC | 1 ms | 128 KiB |
| 11.txt | AC | 0 ms | 128 KiB |
| 12.txt | AC | 0 ms | 128 KiB |
| s1.txt | AC | 0 ms | 128 KiB |
| s2.txt | AC | 0 ms | 128 KiB |
| s3.txt | AC | 0 ms | 128 KiB |
| s4.txt | AC | 1 ms | 128 KiB |