zoukankan      html  css  js  c++  java
  • 804. 唯一摩尔斯密码词

    国际摩尔斯密码定义一种标准编码方式,将每个字母对应于一个由一系列点和短线组成的字符串, 比如: "a" 对应 ".-""b" 对应 "-...""c" 对应 "-.-.", 等等。

    为了方便,所有26个英文字母对应摩尔斯密码表如下:

    [".-","-...","-.-.","-..",".","..-.","--.","....","..",".---","-.-",".-..","--","-.","---",".--.","--.-",".-.","...","-","..-","...-",".--","-..-","-.--","--.."]

    给定一个单词列表,每个单词可以写成每个字母对应摩尔斯密码的组合。例如,"cab" 可以写成 "-.-.-....-",(即 "-.-." + "-..." + ".-"字符串的结合)。我们将这样一个连接过程称作单词翻译。

    返回我们可以获得所有词不同单词翻译的数量。

    例如:
    输入: words = ["gin", "zen", "gig", "msg"]
    输出: 2
    解释: 
    各单词翻译如下:
    "gin" -> "--...-."
    "zen" -> "--...-."
    "gig" -> "--...--."
    "msg" -> "--...--."
    
    共有 2 种不同翻译, "--...-." 和 "--...--.".
    

    注意:

    • 单词列表words 的长度不会超过 100
    • 每个单词 words[i]的长度范围为 [1, 12]
    • 每个单词 words[i]只包含小写字母。
     1 static const auto __ = []()
     2 {
     3     ios::sync_with_stdio(false);
     4     cin.tie(nullptr);
     5     return nullptr;
     6 }();
     7 class Solution {
     8 public:
     9     int uniqueMorseRepresentations(vector<string>& words) {
    10         string passwd[] = {".-","-...","-.-.","-..",".","..-.","--.","....","..",".---","-.-",".-..","--","-.","---",".--.","--.-",".-.","...","-","..-","...-",".--","-..-","-.--","--.."};
    11         map<char,string>mapp;
    12         map<string,int>res;
    13         char a = 'a';
    14         for(int i= 0; i < 26; i++) {
    15             mapp.insert(pair<char, string>(a+i,passwd[i]));
    16         }
    17         
    18         for(string word:words) {
    19             string ans = "";
    20             for(char ch:word) {
    21                 ans += (mapp.find(ch)->second);
    22             }
    23             res.insert(pair<string,int>(ans,0));
    24         }
    25         
    26         return res.size();
    27     }
    28 };
  • 相关阅读:
    负载均衡——LVS DR模式
    Java之BigDecimal详解
    Spring AOP代理对象创建流程
    spring aop切面不生效
    aspectj-autoproxy Controller未生效解决方案
    jvm参数分类
    dubbo优雅停机
    Dubbo 协议注意项
    dubbo provider
    查找java_home的安装路径
  • 原文地址:https://www.cnblogs.com/jj81/p/9019106.html
Copyright © 2011-2022 走看看