列表

详情


683. K 个关闭的灯泡

n 个灯泡排成一行,编号从 1 n 。最初,所有灯泡都关闭。每天 只打开一个 灯泡,直到 n 天后所有灯泡都打开。

给你一个长度为 n 的灯泡数组 blubs ,其中 bulbs[i] = x 意味着在第 (i+1) 天,我们会把在位置 x 的灯泡打开,其中 i 从 0 开始x 从 1 开始

给你一个整数 k ,请返回恰好有两个打开的灯泡,且它们中间 正好 k 个 全部关闭的 灯泡的 最小的天数 如果不存在这种情况,返回 -1

 

示例 1:

输入:
bulbs = [1,3,2],k = 1
输出:2
解释:
第一天 bulbs[0] = 1,打开第一个灯泡 [1,0,0]
第二天 bulbs[1] = 3,打开第三个灯泡 [1,0,1]
第三天 bulbs[2] = 2,打开第二个灯泡 [1,1,1]
返回2,因为在第二天,两个打开的灯泡之间恰好有一个关闭的灯泡。

示例 2:

输入:bulbs = [1,2,3],k = 1
输出:-1

 

提示:

原站题解

去查看

上次编辑到这里,代码来自缓存 点击恢复默认模板
class Solution { public: int kEmptySlots(vector<int>& bulbs, int k) { } };

上一题