結果
問題 | No.1122 Plane Tickets |
ユーザー | risujiroh |
提出日時 | 2020-07-22 23:40:28 |
言語 | C++17 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 3 ms / 1,000 ms |
コード長 | 762 bytes |
コンパイル時間 | 2,018 ms |
コンパイル使用メモリ | 198,080 KB |
最終ジャッジ日時 | 2025-01-12 03:58:03 |
ジャッジサーバーID (参考情報) |
judge1 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 55 |
ソースコード
#include <bits/stdc++.h> using namespace std; #ifdef LOCAL #include "debug.h" #else #define DEBUG(...) #endif int main() { cin.tie(nullptr); ios::sync_with_stdio(false); using ll = long long; vector<ll> a(5); for (auto&& e : a) cin >> e; ll res = 1e18; vector<int> y; auto dfs = [&](auto&& self) -> void { if (size(y) == 5) { for (int i = 0; i < 5; ++i) { if (y[i] + y[(i + 1) % 5] + y[(i + 2) % 5] < 3) { return; } } ll cur = 0; for (int i = 0; i < 5; ++i) { cur += a[i] * y[i]; } res = min(res, cur); return; } for (int i = 0; i <= 3; ++i) { y.push_back(i); self(self); y.pop_back(); } }; dfs(dfs); cout << res / 3 << '\n'; }