摸鱼日记1.19

阅读 68

2022-01-20

学习目标:

动态规划

学习内容:

剑指 Offer 46. 把数字翻译成字符串

掌握好结果判断条件。
递增条件

class Solution {
public:
  int translateNum(int num) {

    string s = to_string(num);
    int a = 1, b = 1, len = s.size();
    for (int i = 2; i <= len; i++) {
      string tmp = s.substr(i - 2, 2);
      int c = tmp.compare("10") >= 0 && tmp.compare("25") <= 0 ? a + b : a;
      b = a;
      a = c;
    }
    return a;
  }
};

剑指 Offer 48. 最长不含重复字符的子字符串

想到思路,还是不会写。

class Solution {
public:
  int lengthOfLongestSubstring(string s) {
    int res = 0, tmp = 0, len = s.size();
    for (int j = 0; j < len; ++j) {
      int i = j - 1;
      while (i >= 0 && s[i] != s[j])
        i--;
      tmp = tmp < j - i ? tmp + 1 : j - i;
      res = max(res, tmp);
    }
    return res;
  }
};

精彩评论(0)

0 0 举报