Robot Takahashi
問題
C – Robot Takahashi
プログラミング初級者から上級者まで楽しめる、競技プログラミングコンテストサイト「AtCoder」。オンラインで毎週開催プログラミングコンテストを開催しています。競技…
記録
- 2022/6/25 リアルタイム参加 解法わからず。
解法
- 後で書く。
コード例
#include <bits/stdc++.h> using namespace std; #include <atcoder/all> using namespace atcoder; using ll = long long; using P = pair<int, int>; #define rep(i, n) for(int i = 0; i < (n); ++i) // using mint = modint998244353; // using mint = modint1000000007; // const int mod = 1000000007; // const ll INF = 1LL << 62; // const int INF = 1001001001; int main() { int N; cin >> N; string S; cin >> S; vector<int> W(N); map<int, P> cnt; int cntM = 0; rep(i, N) { cin >> W[i]; P p = cnt[W[i]]; if (S[i] == '1') { cntM++; p.second++; } else { p.first++; } cnt[W[i]] = p; } int ans = cntM; int current = cntM; for(auto i: cnt) { current += i.second.first; current -= i.second.second; ans = max(ans, current); } cout << ans << endl; return 0; }