結果
| 問題 |
No.161 制限ジャンケン
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2016-02-28 10:57:20 |
| 言語 | C++11(廃止可能性あり) (gcc 13.3.0) |
| 結果 |
AC
|
| 実行時間 | 2 ms / 5,000 ms |
| コード長 | 807 bytes |
| コンパイル時間 | 456 ms |
| コンパイル使用メモリ | 57,792 KB |
| 実行使用メモリ | 6,820 KB |
| 最終ジャッジ日時 | 2024-11-30 04:50:12 |
| 合計ジャッジ時間 | 1,189 ms |
|
ジャッジサーバーID (参考情報) |
judge4 / judge2 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 3 |
| other | AC * 16 |
ソースコード
// ConsoleApplication1.cpp : コンソール アプリケーションのエントリ ポイントを定義します。
//
#include<iostream>
#include<string>
#include<algorithm>
using namespace std;
void f(string s, int *S) {
S[0] = 0;
S[1] = 0;
S[2] = 0;
for (int i = 0; i < s.length(); i++) {
if (s[i] == 'G') {
S[0]++;
}
else if (s[i] == 'C') {
S[1]++;
}
else if(s[i]=='P'){
S[2]++;
}
}
}
int main()
{
int g,c,p;
cin >> g >> c >> p;
string s;
int *S = new int[3];
cin >> s;
f(s, S);
int N = 0;
int x, y, z;
x = min(g, S[1]);
y = min(c, S[2]);
z = min(p, S[0]);
g -= x;
S[1] -= x;
c -= y;
S[2] -= y;
p -= z;
S[0] -= z;
N += 3 * (x + y + z);
int X,Y,Z;
X = min(g, S[0]);
Y = min(c, S[1]);
Z = min(p, S[2]);
N += 1 * (X+Y+Z);
cout << N;
return 0;
}