D. One-Dimensional Battle Ships
题目链接
题意
给定长为n的连续n个方格,放入k个长为a的物体,放入时物体不会覆盖也不会相邻,进行m次操作,每次选择一格,求第几次操作一定会选择到存在物体的格子,若不存在输出-1.
分析
首先最朴素的方案就是用数组模拟链表,每次选择相当于假设某一格没有物体,判断此时剩余方格是否可以容下这样的k个物体,查找选择的方格左右被选择的方格用二分就好,复杂度O(nlog)。
emm但模拟链表麻烦又不好写 于是使用set(其实是现学的),set和map都可以用迭代器遍历, lower_bound适用,同时自带的排序也可
原创
2021-11-08 20:20:11 ·
92 阅读 ·
0 评论