結果
問題 | No.358 も~っと!門松列 |
ユーザー |
![]() |
提出日時 | 2016-04-17 22:36:21 |
言語 | C++11(廃止可能性あり) (gcc 13.3.0) |
結果 |
AC
|
実行時間 | 2 ms / 1,000 ms |
コード長 | 771 bytes |
コンパイル時間 | 1,641 ms |
コンパイル使用メモリ | 159,060 KB |
実行使用メモリ | 5,248 KB |
最終ジャッジ日時 | 2024-10-04 10:34:36 |
合計ジャッジ時間 | 1,938 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 23 |
ソースコード
#include <bits/stdc++.h> using namespace std; int main() { int A[3]; for(int i = 0; i < 3; i++) { cin >> A[i]; } int small = min({A[0], A[1], A[2]}); int big = max({A[0], A[1], A[2]}); if(count(A, A + 3, small) == 1 && count(A, A + 3, big) == 1) { if(A[1] == small || A[1] == big) { cout << "INF" << endl; } else { int ret = 0; for(int i = 1; i <= big; i++) { int M[3] = {A[0] % i, A[1] % i, A[2] % i}; int smaller = min({M[0], M[1], M[2]}); int bigger = max({M[0], M[1], M[2]}); if(count(M, M + 3, smaller) == 1 && count(M, M + 3, bigger) == 1) { if(M[1] == smaller || M[1] == bigger) ++ret; } } cout << ret << endl; } } else { cout << 0 << endl; } }