結果
問題 | No.9 モンスターのレベル上げ |
ユーザー | plasma_e |
提出日時 | 2019-01-17 20:56:07 |
言語 | C++17 (gcc 12.3.0 + boost 1.83.0) |
結果 |
CE
(最新)
AC
(最初)
|
実行時間 | - |
コード長 | 906 bytes |
コンパイル時間 | 750 ms |
コンパイル使用メモリ | 96,656 KB |
最終ジャッジ日時 | 2024-11-14 20:46:23 |
合計ジャッジ時間 | 1,120 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge1 |
(要ログイン)
コンパイルエラー時のメッセージ・ソースコードは、提出者また管理者しか表示できないようにしております。(リジャッジ後のコンパイルエラーは公開されます)
ただし、clay言語の場合は開発者のデバッグのため、公開されます。
ただし、clay言語の場合は開発者のデバッグのため、公開されます。
コンパイルメッセージ
main.cpp: In function 'int main()': main.cpp:24:24: error: 'numeric_limits' is not a member of 'std' 24 | int min = std::numeric_limits<int>::max(); | ^~~~~~~~~~~~~~ main.cpp:24:39: error: expected primary-expression before 'int' 24 | int min = std::numeric_limits<int>::max(); | ^~~
ソースコード
#include<iostream> #include<vector> #include<algorithm> #include<functional> #include<set> #include<map> int main() { std::map<std::pair<int, int>, int> base; int N; std::cin >> N; for (int i = 0; i < N; ++i) { int v; std::cin >> v; ++base[std::make_pair(v, 0)]; } std::vector<int> enemies(N); for (auto& v : enemies) { std::cin >> v; } int min = std::numeric_limits<int>::max(); for (int i = 0; i < N; ++i) { auto now = base; for (int k = 0; k < N; ++k) { auto top = *now.begin(); if (--now[top.first] == 0) { now.erase(top.first); } auto n = top.first.first + enemies[(i + k) % N] / 2; auto u = top.first.second + 1; ++now[std::make_pair(n, u)]; } int max = 0; for (auto const& p : now) { max = std::max(max, p.first.second); } min = std::min(min, max); } std::cout << min << std::endl; }