結果
問題 | No.505 カードの数式2 |
ユーザー |
|
提出日時 | 2019-09-02 23:21:47 |
言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
結果 |
RE
|
実行時間 | - |
コード長 | 671 bytes |
コンパイル時間 | 1,846 ms |
コンパイル使用メモリ | 180,088 KB |
実行使用メモリ | 264,660 KB |
最終ジャッジ日時 | 2024-12-17 19:32:08 |
合計ジャッジ時間 | 7,659 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 17 RE * 11 TLE * 1 |
ソースコード
#include <bits/stdc++.h> #pragma GCC optimize("Ofast") using namespace std; int main() { long long N; cin >> N; long long a[N]; for (int i = 0; i < N; i++) cin >> a[i]; vector<long long> dp[N]; dp[0].push_back(a[0]); for (int i = 1; i < N; i++) { unordered_map<long long, bool> checked; for (auto x : dp[i - 1]) { if (checked[x]) continue; checked[x] = true; dp[i].push_back(x + a[i]); dp[i].push_back(x - a[i]); dp[i].push_back(x * a[i]); dp[i].push_back(x / a[i]); } } cout << *max_element(dp[N - 1].begin(), dp[N - 1].end()) << endl; }