結果
| 問題 |
No.358 も~っと!門松列
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2018-09-29 12:01:28 |
| 言語 | C (gcc 13.3.0) |
| 結果 |
AC
|
| 実行時間 | 1 ms / 1,000 ms |
| コード長 | 846 bytes |
| コンパイル時間 | 432 ms |
| コンパイル使用メモリ | 29,568 KB |
| 実行使用メモリ | 5,248 KB |
| 最終ジャッジ日時 | 2024-10-12 08:13:06 |
| 合計ジャッジ時間 | 1,248 ms |
|
ジャッジサーバーID (参考情報) |
judge4 / judge1 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 23 |
ソースコード
#include <stdio.h>
#include <limits.h>
int main(void)
{
int A[3], B[3], ans = 0, minA = INT_MAX, maxA = INT_MIN, minB, maxB, i, j;
for (i = 0; i < 3; ++i) {
scanf("%d", &A[i]);
if (minA > A[i]) minA = A[i];
if (A[i] > maxA) maxA = A[i];
}
if (A[0] != A[1] && A[1] != A[2] && A[0] != A[2] && (A[1] == minA || A[1] == maxA)) puts("INF");
else {
for (i = 1; i <= maxA; ++i) {
minB = INT_MAX;
maxB = INT_MIN;
for (j = 0; j < 3; ++j) {
B[j] = A[j] % i;
if (minB > B[j]) minB = B[j];
if (B[j] > maxB) maxB = B[j];
}
if (B[0] != B[1] && B[1] != B[2] && B[0] != B[2] && (B[1] == minB || B[1] == maxB)) ++ans;
}
printf("%d", ans);
}
return 0;
}