/**
 * lru design
 * @param operators int整型二维数组 the ops
 * @param k int整型 the k
 * @return int整型一维数组
 */
function LRU( operators ,  k ) {
  let result = []
  let map = new Map()
  
  for (let item of operators) {
    if (item[0] === 1) {
      // 设置
      map.set(item[1], item[2])
      if (map.size > k) {
        map.delete(map.keys().next().value)
      }
    } else if (item[0] === 2) {
      // 获取
      if (map.has(item[1])) {
        let temp = map.get(item[1])
        result.push(map.get(item[1]))
        map.delete(item[1])
        map.set(item[1], temp)
      } else {
        result.push(-1)
      }
    }
  }
  
  return result
}
module.exports = {
    LRU : LRU
};