样例全过了,0分
查看原帖
样例全过了,0分
1076932
z__j__y楼主2024/8/20 17:23
#include <iostream>
#include <cstring>
using namespace std;
string s,tmp,ans;
int len,n;
signed main(){
	scanf("%d\n",&n);
	getline(cin,s);
	s.push_back(' ');
	len=s.size();
	for(int i=0;i<len;i++){
		if(s[i]==' '){
			int lena=tmp.size();
			if(lena==1){
				if(tmp==".")ans.push_back('E');
				else ans.push_back('T');
			}else if(lena==2){
				if(tmp==".-")ans.push_back('A');
				else if(tmp=="..")ans.push_back('I');
				else if(tmp=="--")ans.push_back('M');
				else ans.push_back('N');
			}else if(lena==3){
				if(tmp=="-..")ans.push_back('D');
				else if(tmp=="--.")ans.push_back('G');
				else if(tmp=="-.-")ans.push_back('K');
				else if(tmp=="---")ans.push_back('O');
				else if(tmp==".-.")ans.push_back('R');
				else if(tmp=="...")ans.push_back('S');
				else if(tmp=="..-")ans.push_back('U');
				else ans.push_back('W');
			}else{
				if(tmp=="-...")ans.push_back('B');
				else if(tmp=="-.-.")ans.push_back('C');
				else if(tmp=="..-.")ans.push_back('F');
				else if(tmp=="....")ans.push_back('H');
				else if(tmp==".---")ans.push_back('J');
				else if(tmp==".-..")ans.push_back('L');
				else if(tmp==".--.")ans.push_back('P');
				else if(tmp=="--.-")ans.push_back('Q');
				else if(tmp=="...-")ans.push_back('V');
				else if(tmp=="-..-")ans.push_back('X');
				else if(tmp=="-.--")ans.push_back('Y');
				else ans.push_back('Z');
			}
			tmp="";
		}else
			tmp.push_back(s[i]);
	}
	cout << ans;
	puts("");
}
2024/8/20 17:23
加载中...