結果
問題 | No.161 制限ジャンケン |
ユーザー |
![]() |
提出日時 | 2023-11-02 01:00:24 |
言語 | C++17 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 2 ms / 5,000 ms |
コード長 | 770 bytes |
コンパイル時間 | 911 ms |
コンパイル使用メモリ | 105,500 KB |
最終ジャッジ日時 | 2025-02-17 17:16:57 |
ジャッジサーバーID (参考情報) |
judge4 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 16 |
ソースコード
#include<iostream>#include<iomanip>#include<string>#include<algorithm>#include<vector>#include<set>#include<list>#include<queue>#include<math.h>#include<bitset>using ll = long long;using namespace std;int main(){int g, c, p, pts = 0, og = 0, oc = 0, op = 0;string s;vector<int> me(3), opp(3);cin >> me[0] >> me[1] >> me[2] >> s;for (int i = 0; i < s.size(); i++){if (s[i] == 'G') opp[2]++;else if (s[i] == 'C') opp[0]++;else opp[1]++;}for (int i = 0; i < 3; i++){int tmp = min(me[i], opp[i]);pts += tmp*3;me[i] -= tmp;opp[i] -= tmp;}for (int i = 0; i < 3; i++){if (me[i]) pts += min(me[i], opp[(3+i-1)%3]);}cout << pts << endl;}