• 博客园logo
  • 会员
  • 周边
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
 






sfzyk

 
 

Powered by 博客园
博客园 | 首页 | 新随笔 | 联系 | 订阅 订阅 | 管理

09 2018 档案

 
795. Number of Subarrays with Bounded Maximum
摘要:数学的方式 是对于所有的字符分成简单的三类 0 小于 L 1 LR 之间 2 大于R 也就是再求 不包含 2 但是包含1 的子数组个数 不包含2的子数组个数好求 对于连续的相邻的n个 非2类数 就有 n (n 1)//2 + n 个连续子数组 但是包含1 的子数组个数不好求,这里求反 求不包含 包含 阅读全文
posted @ 2018-09-30 16:23 sfzyk 阅读(92) 评论(0) 推荐(0)
tiger-complier 问题记录 类型检查
摘要:1 注意区分 Ty_xxx 和 a_ 的区别 A 开头是对应的是原程序中的一个实体 Ty _ 开头则是类型检查中的一个抽象类 代表了一类实体 比如 A_recordTy 是原程序中的 type per {name:string , age:int} Ty_record 则是一种类型的抽象 是 Ty_ 阅读全文
posted @ 2018-09-24 12:31 sfzyk 阅读(196) 评论(0) 推荐(0)
leetcode 854. K-Similar Strings
摘要:给定两个字符串, 判断最少经过多少次swap 可以使得 两个字符串一致, 首先类似的问题 是存在一个 underlying graph 的。 每一个字母都对应着一个节点,两个字符串的不一致表示为图上的一条有向边 最后的问题转化为 图上的最(多)圆环分解 要注意的是贪心策略并不能解决问题(即每一次都选 阅读全文
posted @ 2018-09-16 18:30 sfzyk 阅读(351) 评论(0) 推荐(0)
901. Online Stock Span [短于线性的时间统计单个元素的Span ]
摘要:Span 指这个元素之前连续的小于这个元素的值有多少个 原理: 维护递减栈 这个栈内的元素是递减的序列 新到一个元素x 依次出栈比x小的(也就是这个元素的Span) 这种问题的关键在于 新来的元素如果比前一个元素小 那么答案是1 如果比前一个元素大 ( 那么前一个元素在之后就完全没有用了, 所以可以 阅读全文
posted @ 2018-09-16 16:17 sfzyk 阅读(127) 评论(0) 推荐(0)
抽象语法分析 问题记录
摘要:到目前为止 完成了词法分析 语法分析 抽象语法生成的全部内容 。 记录以下出现的问题 问题一 书上提到貌似多余的一条规则,书上只是指出了和哪一条规则是相关的 但是并没有进行说明具体是哪一条规则 但是实践中 问题自然的出现了 有以下的文法规则 0 exp id[ exp ] of exp 1 exp 阅读全文
posted @ 2018-09-12 21:18 sfzyk 阅读(146) 评论(0) 推荐(0)
857. Minimum Cost to Hire K Workers
摘要:有N个工人,对于每一个工人存在一个 quality 和 wage 要雇佣 K个 工人 雇佣的工人 必须满足 这两者的比值相同 1 注意到我们可以按照按照工人的比值进行排序 可以分解成若干个更小的有相互关联的子问题 前 K 个 可以进行选择的工人, 按照第K个 工人的比值 即可 但是我们要利用这里 这 阅读全文
posted @ 2018-09-03 12:02 sfzyk 阅读(194) 评论(0) 推荐(0)
856. Score of Parentheses
摘要:计算表达式的值 ()=1 (A)=A 2 AB=A+B 1 表达式只有() 可以将所有的() 替换为1 然后给每一个1 乘上相应的权重,累加即可 2 使用栈结构 遇到( 就压栈一个0 遇到 ) 就出栈一个 v 同时压栈一个 max(2 v,1) 因为如果是() 的话 ,当时压栈的是0 这里要给这个表 阅读全文
posted @ 2018-09-03 11:18 sfzyk 阅读(94) 评论(0) 推荐(0)
855. Exam Room
摘要:维护一个数据结构要满足:一个教室线性排列的座位 0 ... N 1 调用seat 入座一个距离最近学生最远的座位 调用leave x 离座一个位置为x的学生 由于N最多是 10e9 所以选择维护 学生的位置这一个有序列表 使用了 bisect.insort 作为有序列表的插入方法 使用 list.r 阅读全文
posted @ 2018-09-03 11:04 sfzyk 阅读(154) 评论(0) 推荐(0)