zoukankan      html  css  js  c++  java
  • Leetcode-423 Reconstruct Original Digits from English(从英文中重建数字)

     1 class Solution
     2 {
     3     public:
     4         string originalDigits(string s)
     5         {
     6             vector<int> CharacterList(26,0);
     7             for(auto c:s)
     8             {
     9                 CharacterList[c-'a'] ++;
    10             }
    11             
    12             string result;
    13             if(CharacterList['g'-'a'])
    14             {
    15                 result.append(CharacterList['g'-'a'],'8');
    16                 CharacterList['e'-'a'] -= CharacterList['g'-'a'];
    17                 CharacterList['i'-'a'] -= CharacterList['g'-'a'];
    18                 CharacterList['h'-'a'] -= CharacterList['g'-'a'];
    19                 CharacterList['t'-'a'] -= CharacterList['g'-'a'];
    20                 CharacterList['g'-'a'] = 0;
    21             }
    22             if(CharacterList['x'-'a'])
    23             {
    24                 result.append(CharacterList['x'-'a'],'6');
    25                 CharacterList['s'-'a'] -= CharacterList['x'-'a'];
    26                 CharacterList['i'-'a'] -= CharacterList['x'-'a'];
    27                 CharacterList['x'-'a'] = 0;
    28             }
    29             if(CharacterList['s'-'a'])
    30             {
    31                 result.append(CharacterList['s'-'a'],'7');
    32                 CharacterList['e'-'a'] -= 2*CharacterList['s'-'a'];
    33                 CharacterList['v'-'a'] -= CharacterList['s'-'a'];
    34                 CharacterList['n'-'a'] -= CharacterList['s'-'a'];
    35                 CharacterList['s'-'a'] = 0;
    36             }
    37             if(CharacterList['v'-'a'])
    38             {
    39                 result.append(CharacterList['v'-'a'],'5');
    40                 CharacterList['f'-'a'] -= CharacterList['v'-'a'];
    41                 CharacterList['i'-'a'] -= CharacterList['v'- 'a'];
    42                 CharacterList['e'-'a'] -= CharacterList['v'-'a'];
    43                 CharacterList['v'-'a'] = 0;
    44             }
    45             if(CharacterList['i'-'a'])
    46             {
    47                 result.append(CharacterList['i'-'a'],'9');
    48                 CharacterList['n'-'a'] -= 2*CharacterList['i'-'a'];
    49                 CharacterList['e'-'a'] -= CharacterList['i'-'a'];
    50                 CharacterList['i'-'a'] = 0;
    51             }
    52             if(CharacterList['u'-'a'])
    53             {
    54                 result.append(CharacterList['u'-'a'],'4');
    55                 CharacterList['f'-'a'] -= CharacterList['u'-'a'];
    56                 CharacterList['o'-'a'] -= CharacterList['u'-'a'];
    57                 CharacterList['r'-'a'] -= CharacterList['u'-'a'];
    58                 CharacterList['u'-'a'] = 0;
    59             }
    60             if(CharacterList['h'-'a'])
    61             {
    62                 result.append(CharacterList['h'-'a'],'3');
    63                 CharacterList['t'-'a'] -= CharacterList['h'-'a'];
    64                 CharacterList['r'-'a'] -= CharacterList['h'-'a'];
    65                 CharacterList['e'-'a'] -= 2*CharacterList['h'-'a'];
    66                 CharacterList['h'-'a'] = 0;
    67             }
    68             if(CharacterList['w'-'a'])
    69             {
    70                 result.append(CharacterList['w'-'a'],'2');
    71                 CharacterList['t'-'a'] -= CharacterList['w'-'a'];
    72                 CharacterList['o'-'a'] -= CharacterList['w'-'a'];
    73                 CharacterList['w'-'a'] = 0;
    74             }
    75             if(CharacterList['z'-'a'])
    76             {
    77                 result.append(CharacterList['z'-'a'],'0');
    78                 CharacterList['e'-'a'] -= CharacterList['z'-'a'];
    79                 CharacterList['r'-'a'] -= CharacterList['z'-'a'];
    80                 CharacterList['o'-'a'] -= CharacterList['z'-'a'];
    81                 CharacterList['z'-'a'] = 0;
    82             }
    83             if(CharacterList['o'-'a'])
    84             {
    85                 result.append(CharacterList['o'-'a'],'1');
    86                 CharacterList['n'-'a'] -= CharacterList['o'-'a'];
    87                 CharacterList['e'-'a'] -= CharacterList['o'-'a'];
    88                 CharacterList['o'-'a'] = 0;
    89             }
    90             sort(result.begin(),result.end());
    91             return result;
    92         }
    93 };
  • 相关阅读:
    Spring基于注解的事务控制
    Spring基于配置的事务控制
    Spring基于注解配置AOP
    字符串构造,思维
    DP
    线段树二分
    计算机组成原理
    Graph Attention Networks (GAT) 代码解读
    Python 列表与字典
    2.运算方法和运算器
  • 原文地址:https://www.cnblogs.com/Asurudo/p/9486368.html
Copyright © 2011-2022 走看看