ABC088B - Card Game for Twoを解いてみた/ C++
AtCoder初心者です.
ABC008B-Gard Game for Twoを自分なりに解いてみました.
ほかにもっと賢いやり方がありましたらご教授いただけると幸いです.
不要なマクロとかありますが悪しからず.
問題は以下のとおり
atcoder.jp
#include <bits/stdc++.h> #define _GLIBCXX_DEBUG using namespace std; #define rep(i, n) for (int i = 0; i < (int)(n); i++) int maxcard(vector<int>v,int &max_i){ int max=0; for(int i=0;i<v.size();i++){ if(v.at(i) >= max ){ max = v.at(i); max_i = i; } } //cout << "max:"<< max << endl; return max; } int main() { int N; cin >> N; vector<int> a(N); rep(i,N){ cin >> a.at(i); } int max_i = 0; int alice = 0; int bob =0; int j = 0; while(j<N){ alice += maxcard(a,max_i); //cout << alice << endl; a.at(max_i)=0; j++; bob += maxcard(a,max_i); //cout << bob << endl; a.at(max_i)=0; } int ans; ans = alice -bob; cout << ans << endl; }