728x90
SMALL

using System;

public class Solution {
    public string solution(string letter) {
        string answer = "";
        string[] morse = { ".-", "-...", "-.-.", "-..", ".", "..-.", "--.", "....", "..", ".---", "-.-", ".-..", "--", "-.", "---", ".--.", "--.-", ".-.", "...", "-", "..-", "...-", ".--", "-..-", "-.--", "--.." };
        // Split()은 문자열을 잘라주고 현재 공백을 기준으로 자름
        foreach(string a in letter.Split(" "))
        {
            answer += Convert.ToChar(Array.IndexOf(morse, a) + 97);
        }

 

// IndexOf()는 동일한 문자열이 존재할 경우 문자열의 위치를 반환한다. 문자열의 위치에 97을 더해 Convert.ToChar()로 변환하면 그에 맞는 문자로 변환된다.
        
        return answer;
    }
}

 

 

파이썬

////

 

def solution(letter):
    answer = ''

    morse = { 
        '.-':'a','-...':'b','-.-.':'c','-..':'d','.':'e','..-.':'f',
        '--.':'g','....':'h','..':'i','.---':'j','-.-':'k','.-..':'l',
        '--':'m','-.':'n','---':'o','.--.':'p','--.-':'q','.-.':'r',
        '...':'s','-':'t','..-':'u','...-':'v','.--':'w','-..-':'x',
        '-.--':'y','--..':'z'
    }   

    letter_ls = letter.split()
    for l in letter_ls:
        answer += morse[l]

    return answer

 

//////////

 

def solution(letter):
    answer = ''
    letter = letter.split()
    morse = { 
    '.-':'a','-...':'b','-.-.':'c','-..':'d','.':'e','..-.':'f',
    '--.':'g','....':'h','..':'i','.---':'j','-.-':'k','.-..':'l',
    '--':'m','-.':'n','---':'o','.--.':'p','--.-':'q','.-.':'r',
    '...':'s','-':'t','..-':'u','...-':'v','.--':'w','-..-':'x',
    '-.--':'y','--..':'z'
    }
    for c in letter:
        answer += morse[c]

    return answer

 

자바

/////

 

import java.util.Map;
import java.util.HashMap;

class Solution {
    public String solution(String letter) {
        String answer = "";
        Map<String, String> morse = new HashMap<>(){
            {
                put(".-","a");
                put("-...","b");
                put("-.-.","c");
                put("-..","d");
                put(".","e");
                put("..-.","f");
                put("--.","g");
                put("....","h");
                put("..","i");
                put(".---","j");
                put("-.-","k");
                put(".-..","l");
                put("--","m");
                put("-.","n");
                put("---","o");
                put(".--.","p");
                put("--.-","q");
                put(".-.","r");
                put("...","s");
                put("-","t");
                put("..-","u");
                put("...-","v");
                put(".--","w");
                put("-..-","x");
                put("-.--","y");
                put("--..","z");
            }
        };
        String[] letters = letter.split(" ");
        for(String str : letters){
            answer += morse.get(str);
        }
        return answer;
    }
}

 

/////

 

class Solution {
    public String solution(String letter) {
        String answer = "";
        String[] mos = {".-","-...","-.-.","-..",".","..-.","--.","....","..",
                        ".---","-.-",".-..","--","-.","---",".--.","--.-",".-.",
                        "...","-","..-","...-",".--","-..-","-.--","--.."};
        String[] alpha = {"a","b","c","d","e","f","g","h","i","j","k","l","m",
                          "n","o","p","q","r","s","t","u","v","w","x","y","z"};

        String[] str = letter.split(" ");
        int idx = 0;
        for(int i =0; i<str.length; i++)
        {
            for(int j =0; j<mos.length; j++)
            {
                if(mos[j].equals(str[i]))
                {
                    idx = j;
                    break;
                }
            }
            answer += alpha[idx];
        }

        return answer;
    }
}
728x90

설정

트랙백

댓글