結果

問題 No.423 ハムスター語初級(数詞)
ユーザー Yug_min_nullYug_min_null
提出日時 2021-09-14 00:11:16
言語 C++14
(gcc 13.3.0 + boost 1.87.0)
結果
AC  
実行時間 3 ms / 2,000 ms
コード長 866 bytes
コンパイル時間 2,037 ms
コンパイル使用メモリ 193,104 KB
実行使用メモリ 6,944 KB
最終ジャッジ日時 2024-06-26 01:53:57
合計ジャッジ時間 2,637 ms
ジャッジサーバーID
(参考情報)
judge5 / judge2
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 1
other AC * 9
権限があれば一括ダウンロードができます

ソースコード

diff #
プレゼンテーションモードにする

#define _GLIBCXX_DEBUG
#define ll long long
#include <bits/stdc++.h>
using namespace std;
int main() {
string S; cin >> S;
string T = "";
if(S == "ham"){
cout << S << endl;
return 0;
}
while((int)S.size() != 0){
if((int)S.size() == 3){
T += "0";
S = "";
}else{
if(S.substr(0, 4) == "hamu"){
T += "1";
string U = S.substr(4, (int)S.size());
S = U;
}else{
T += "0";
string U = S.substr(3, (int)S.size());
S = U;
}
}
}
int X = 0;
reverse(T.begin(), T.end());
for(int i = 0; i < (int)T.size(); i++){
if(T[i] == '1'){
int U = (int)pow(2, i);
X += U;
}
}
X *= 2;
string ans = "";
while(X != 0){
if(X%2 == 0) ans += "mah";
else ans += "umah";
X /= 2;
}
reverse(ans.begin(), ans.end());
cout << ans << endl;
}
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
0