Contents

ARST打卡第146周[146/521]

Algorithm

lc717_1比特与2比特字符

思路: 很简单,1后面必须带一个字符,然后0必须单独,全都是必然,没有组合的可能,所以只要模拟便可以知道最后一位是否需要用1bit的0来表示

题解还有一种有趣的倒序逻辑,也可以看看

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
class Solution {
public:
    bool isOneBitCharacter(vector<int>& bits) {
        int sz = bits.size();

        // if (bits[sz - 1] != 0) {
        //     // 最好报错
        //     return false;
        // }

        for (int i = 0; i < sz; i++) {
            if (bits[i] == 1) {
                // 这里如果是倒数第二个,那就是直接返回false
                if (i == sz - 2) {
                    return false;
                }
                i++;
            }
            // 如果是 '0' 就是单独一位
            // 如果正好是末尾,就可以返回true
            if (i == sz - 1) {
                return true;
            }
        }
        // 不会跑到这里
        return false;
    }
};

Review

【TED演讲】我在100天的拒绝中学到了什么?

不要害怕被拒绝,做好准备,询问为什么,了解原因,不断改进,然后直到被接受

别被拒绝吓倒,不断为而不争,努力趋近

Tips

BRPC的精华全在bthread上啦(一):Work Stealing以及任务的执行与切换

Share-关于ftp在windows文件浏览器器上编码问题引起的问题的原因说明

ftp在windows文件管理器上使用有编码问题,windows为GBK编码,GBK 2字节长度

linux后台是utf-8 3字节长度,所以windows10客户端创建的这个长度的文件能访问,但是linux 后台创建的同名文件不能访问

或者是其他用utf-8客户端上传的文件名,在windows上会因为文件路径过长而无法访问

但是windows本身创建同名的文件时又可以访问