QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 3822|回复: 1
打印 上一主题 下一主题

953. 验证外星语词典

[复制链接]
字体大小: 正常 放大
杨利霞        

5273

主题

82

听众

17万

积分

  • TA的每日心情
    开心
    2021-8-11 17:59
  • 签到天数: 17 天

    [LV.4]偶尔看看III

    网络挑战赛参赛者

    网络挑战赛参赛者

    自我介绍
    本人女,毕业于内蒙古科技大学,担任文职专业,毕业专业英语。

    群组2018美赛大象算法课程

    群组2018美赛护航培训课程

    群组2019年 数学中国站长建

    群组2019年数据分析师课程

    群组2018年大象老师国赛优

    跳转到指定楼层
    1#
    发表于 2019-4-19 21:45 |只看该作者 |倒序浏览
    |招呼Ta 关注Ta
    953. 验证外星语词典

    ) u1 s4 }& m! M: d  P5 H: r$ f8 Y! D# m8 }4 j( p3 q/ w+ e
    解题思路:根据题目要求,比较两个相邻字母是否按照order排序;创建(map)letter_orders,记录字典顺序;
    5 C& I+ w" M9 x4 ~. O8 r7 E比较即可* y2 O, r3 `+ S% u

    1 E; N/ M( k2 h. rclass Solution {, t5 L1 f: f6 k6 ?0 }
    public:, t4 C9 L0 }4 P+ g) o5 }7 J
            bool isAlienSorted(vector<string>& words, string order)
    ' O, p+ a& ]/ ?# e4 E- [        {; |) h  N6 W& H' [+ s4 x3 F
                    int min_letter_length = words[0].length();
    + m$ X4 t* V, S0 t                map<char, int> letter_orders;1 F' y/ g1 u7 k4 V; d( C
                    letter_orders[' '] = 0;//空字符比其他字符都小记为0% s. i0 n5 m5 G6 B# p3 y# \
                    for (int i = 0; i < order.length(); i++); @2 g  A! u6 ^
                    {5 b, ]+ y2 ~# n% a/ y1 A  n
                            letter_orders[order] = i + 1;
    9 T% [$ w+ ?: v  Z1 Y) k3 h                }
    " y* ^3 A9 [2 J+ I  q) G3 Q+ ^- ?                for (int i = 0; i < words.size() - 1; i++)
    0 T! q2 {6 U  f. w% R0 s$ b                {
    6 p2 H9 B( M7 y                        if (!check(words, words[i + 1], letter_orders))+ L# F+ {; ~. h9 E# O
                                    return false;
    7 Q7 ]& D2 W  ^" u4 M6 F                }
    & q; k) Q  K1 A( x0 k+ S                return true;
    + M* O( W, a7 N/ E0 C7 @& m        }
    7 k! C8 J# D/ k+ V        bool check(string a, string b, map<char, int>letter_orders)
    ; W( A" \6 N. x" q) k4 j/ \        {8 R, i9 B. e$ y$ a2 y7 _
                    int sign = -1;+ S" B/ D" a( A2 M7 d- d7 V6 W
                    for (int i = 0; i < a.length(); i++)4 e# s9 B$ x( E' R
                    {
    6 X% m3 E; u& s  y                        if (letter_orders[a] < letter_orders[b])) C# G' a' J: S& x% d
                            {
    2 b/ X2 L# Z  Z* h/ c; ]5 f                                return true;  }, `6 p  y- A% ]- q7 g  i; V* v
                            }2 ~: ?  j% r. E2 e. x
                            else if (letter_orders[a] > letter_orders[b])
    ) t- B# o/ o4 K3 Z                        {7 M9 ^; C5 \2 ~6 m! a" p0 e
                                    return false;# h& D- @/ |! ~; W- q1 D: v8 V
                            }5 D" t) G2 t1 A/ L
                    }
    ) k1 G! y7 j/ r! _+ a                return true;* u, W) H9 U5 Q  e& i+ \0 U- r# t
            }3 d  M2 {3 T$ g" D
    };) r% `1 z# H' V1 w- m
    --------------------- , x$ N/ s9 x4 R3 U4 N

    $ l9 m  T; p! a0 H6 ^# t: h+ G+ o2 }1 b2 ~0 Y; q- r4 y& E
    4 }( G/ F* k; L: w
    7 e) _6 q3 j5 U; q
    zan
    转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信

    0

    主题

    3

    听众

    2

    积分

    升级  40%

    该用户从未签到

    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 注册地址

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

    关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

    手机版|Archiver| |繁體中文 手机客户端  

    蒙公网安备 15010502000194号

    Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

    GMT+8, 2026-4-17 23:21 , Processed in 2.468925 second(s), 62 queries .

    回顶部