全部评论
//买果汁 function fn (arr) { var newArr = [] // 统计出现次数 arr.map(item => { if (newArr.findIndex(i => i.key === item) !== -1) { newArr[newArr.findIndex(i => i.key === item)].sum ++ } else { newArr.push({ key: item, // 果汁类型 sum: 1, // 需要的数量 num: 0 // 实际购买数量 }) } }) // 计算实际购买的数量 newArr.map((item, index) => { newArr[index].num = parseInt(item.sum / 2) + item.sum % 2 }) // 计算总数 var sum = 0 newArr.map(item => { sum = sum + item.num }) return sum } fn(arr)
第一题:Java import java.util.HashMap; import java.util.Map; import java.util.Scanner; public class Baidu { public static void main(String[] args) { int res = 0; Scanner in = new Scanner(System.in); // 员工数 int n = in.nextInt(); // 种类 int k = in.nextInt(); // 每一个员工喜欢的饮料 int[] drinks = new int[n]; for (int i = 0; i < n; i++) { drinks[i] = in.nextInt(); } Map<Integer, Integer> map = new HashMap(); for (int i = 0; i < drinks.length; i++) { if (map.containsKey(drinks[i])) { if (map.get(drinks[i]) - 1 >= 0 ) { map.put(drinks[i], map.get(drinks[i]) - 1); } else { map.put(drinks[i], map.get(drinks[i]) + 1); res += 1; } } else { map.put(drinks[i], 1); res += 1; } } System.out.println(res); } }
楼主能不能发点清晰的?跪求😂
第三题,我用了邻接表,挨个搜索,有更好的方法吗
为啥和我的题不一样?难道还是随机抽题的?
我的是剪刀石头布
相关推荐
11-29 14:05
门头沟学院 嵌入式软件开发 点赞 评论 收藏
分享