前段时间晚上跑步顶不住,太冷了,现在温度稍微好转,一周两次五公里吧。做点室内的锻炼活动。
每天五十个俯卧撑。。。
每周还是有个固定时间看看电视,游戏放松下。
这周没有吃外卖,健康的一周 😊。
感觉双休日每次吃完饭可以散步半小时左右。
repo 写了个 Sudoku 使用 SAT 来解(Boolean satisfiability problem)
思想:
- 初始化已经在 board 上确定的元素的条件。
- 对于每个 cell 要求只能是 1-9 中的数,并且不能出现两种情况(即是 1 又是 2)。
- 每行,每列要求只能出现一次是 1-9。如行要求举例:Pos(0,0)=1 时要求 Pos(0,1)..Pos(0,8)不能是 1。
- 同理对 3*3 块做要求。
1235. Maximum Profit in Job Scheduling
思路:
- 首先对每个 job 按 start time 排序
- DFS 搜索,对于 job[i],只有选,不选两个选项
- 不选,那么就遍历 job[i+1]
- 选,寻找 job[i] end time 后 job[j]
- 这里可以使用二分搜索优化,找第一个>=job[i][endtime]
- 结果就是对两个选择取 max