void solve() { int n, a, b; cin >> n >> a >> b; int j = 0, o = 0; for (int i = 0; i < n; i++) { int x; cin >> x; if (x & 1) j++; else o++; } int ans = 1e18; if (j && !o) { ans = min(ans, a * (j - 1)); ans = min(ans, a * j * (j - 1) / 2); } else if (o && !j) { ans = min(ans, a * (o - 1)); ans = min(ans, a * o * (o - 1) / 2); } if (j && o) { ans = min(ans, a * (j + o - 2) + b); ans = min(ans, b * max(j, o) + a * (min(j, o) - 1)); ans = min(ans, b * max(j, o) + b * (min(j, o) - 1)); ans = min(ans, b * o * j); ans = min(ans, a * (j * (j - 1) / 2 + o * (o - 1) / 2) + b); ans = min(ans, b * o * j + a * (j * (j - 1) / 2 + o * (o - 1) / 2)); } cout << ans << endl; }