1var Solution = function (nums) {2this.map = nums.reduce((result, num, index) => {3const value = result.get(num) ?? [];45value.push(index);6result.set(num, value);7return result;8}, new Map());9};1011Solution.prototype.pick = function (target) {12const pick = this.map.get(target);13const random = (Math.random() * pick.length) | 0;1415return pick[random];16};