結果
問題 |
No.110 しましまピラミッド
|
ユーザー |
|
提出日時 | 2016-10-14 17:09:29 |
言語 | C++11(廃止可能性あり) (gcc 13.3.0) |
結果 |
WA
|
実行時間 | - |
コード長 | 1,387 bytes |
コンパイル時間 | 865 ms |
コンパイル使用メモリ | 67,400 KB |
実行使用メモリ | 6,824 KB |
最終ジャッジ日時 | 2024-11-22 06:47:39 |
合計ジャッジ時間 | 1,765 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 WA * 1 |
other | AC * 7 WA * 19 |
ソースコード
#include <iostream> #include <cstdint> #include <vector> #include <algorithm> using namespace std; int main() { ios::sync_with_stdio(false); cin.tie(0); int w; cin >> w; vector<int> white(w); for (auto& i : white) { cin >> i; } sort(white.begin(), white.end()); int b; cin >> b; vector<int> black(b); for (auto& i : black) { cin >> i; } sort(black.begin(), black.end()); int base_w = 1; int base_b = 1; int temp = -1; vector<int> white2 = white; vector<int> black2 = black; for (int i = (int)white.size() - 1; i >= 0; i--) { for (int j = (int)black.size() - 1; j >= 0; j--) { if (white.at(i) > black.at(j)) { temp = black.at(j); base_w++; break; } else { black.pop_back(); } } if (white.at(i) < temp) { temp = white.at(i); base_w++; } else { white.pop_back(); continue; } } for (int i = (int)black2.size() - 1; i >= 0; i--) { for (int j = (int)white2.size() - 1; j >= 0; j--) { if (black2.at(i) > white2.at(j)) { temp = white2.at(j); base_b++; break; } else { white2.pop_back(); } } if (black2.at(i) < temp) { temp = black2.at(i); base_b++; } else { black2.pop_back(); continue; } } cout << max(base_w, base_b) << endl; return 0; }