結果
| 問題 |
No.145 yukiover
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2015-02-06 01:38:48 |
| 言語 | C++11(廃止可能性あり) (gcc 13.3.0) |
| 結果 |
AC
|
| 実行時間 | 5 ms / 5,000 ms |
| コード長 | 864 bytes |
| コンパイル時間 | 1,369 ms |
| コンパイル使用メモリ | 159,624 KB |
| 実行使用メモリ | 5,376 KB |
| 最終ジャッジ日時 | 2024-06-23 10:00:41 |
| 合計ジャッジ時間 | 2,204 ms |
|
ジャッジサーバーID (参考情報) |
judge4 / judge2 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 4 |
| other | AC * 20 |
ソースコード
#include <bits/stdc++.h>
using namespace std;
string s;
int N,n,a_h,i,j,k,l_t,u,v_x,y,z;
int main(){
cin >> N >> s;
int res = 0;
for(n=0;n<N;n++){
char &c = s[n];
if(c<='h')a_h++;
else if(c<='i')i++;
else if(c<='j')j++;
else if(c<='k')k++;
else if(c<='t')l_t++;
else if(c<='u')u++;
else if(c<='x')v_x++;
else if(c<='y')y++;
else if(c<='z')z++;
}
n = min({y,u,k,i,a_h}); res+=n,y-=n,u-=n,k-=n,i-=n,a_h-=n;
n = min({y,u,k,i/2}); res+=n,y-=n,u-=n,k-=n,i-=n*2;
n = min({y,u,k,j}); res+=n,y-=n,u-=n,k-=n,j-=n;
n = min({y,u,k/2}); res+=n,y-=n,u-=n,k-=n*2;
n = min({y,u,l_t}); res+=n,y-=n,u-=n,l_t-=n;
n = min({y,u/2}); res+=n,y-=n,u-=n*2;
n = min({y,v_x}); res+=n,y-=n,v_x-=n;
res += y/2 + z;
cout<<res<<endl;
}