Twillo OA

oa还是之前的一模一样,两周前收到,刚做完。
https://www.1point3acres.com/bbs/thread-449047-1-1.html

报个我的:

分享刚做的Twilio OA,标题是University Recruiting Fall 2019 Tests (A),90分钟完成。
第一题:给一个prefixes: List[str]和一个numbers: List[str],prefixes和numbers里的str最长的长度是16。输出一个List[str] such that 每一个元素是numbers的元素在prefixes里的最长的前缀match。
解法是把prefixes存放在prefixes_set里,对每一个number,遍历其前缀字符串,从长到短在prefix_set搜索,复杂度O(n)。
第二题:问第一题的复杂度,如何改进,何时会使用改进的算法。
我认为无法改进时间复杂度,空间可以稍微缩小,用Trie。当prefixes里有大量元素是其它元素的前缀字符串的时候使用,但是大O并不会被优化。
第三题:给一个str,返回一个List[str]。情景是一条短信太长,手机短信不够发,截成几个短消息发送。题目里有具体的截断消息的方法。
问题不难,但是要小心一个很坑的地方:做题的时候看main函数里是怎么输入和输出的,因为题目没给出明确的function signature,你得自己找出输入和输出的type。

第一题没懂什么意思 可以解释一下吗?