LeetCode 672. 灯泡开关 Ⅱ(枚举)
生活随笔
收集整理的這篇文章主要介紹了
LeetCode 672. 灯泡开关 Ⅱ(枚举)
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
1. 題目
現(xiàn)有一個(gè)房間,墻上掛有 n 只已經(jīng)打開的燈泡和 4 個(gè)按鈕。
在進(jìn)行了 m 次未知操作后,你需要返回這 n 只燈泡可能有多少種不同的狀態(tài)。
假設(shè)這 n 只燈泡被編號(hào)為 [1, 2, 3 …, n],這 4 個(gè)按鈕的功能如下:
- 1將所有燈泡的狀態(tài)反轉(zhuǎn)(即開變?yōu)殛P(guān),關(guān)變?yōu)殚_)
- 2將編號(hào)為偶數(shù)的燈泡的狀態(tài)反轉(zhuǎn)
- 3將編號(hào)為奇數(shù)的燈泡的狀態(tài)反轉(zhuǎn)
- 4將編號(hào)為 3k+1 的燈泡的狀態(tài)反轉(zhuǎn)(k = 0, 1, 2, …)
來源:力扣(LeetCode) 鏈接:https://leetcode-cn.com/problems/bulb-switcher-ii
著作權(quán)歸領(lǐng)扣網(wǎng)絡(luò)所有。商業(yè)轉(zhuǎn)載請(qǐng)聯(lián)系官方授權(quán),非商業(yè)轉(zhuǎn)載請(qǐng)注明出處。
2. 解題
6個(gè)燈為一組循環(huán),暴力枚舉所有狀態(tài),參考題解
class Solution { public:int flipLights(int n, int m) {if(n ==0 || m == 0){return 1;}if(n == 1){return 2;}else if(n == 2 && m == 1){return 3;}else if((n == 2 && m >= 2) || m == 1){return 4;}else if(n >= 3 && m == 2){return 7;}else {return 8;}} };0 ms 8.3 MB
總結(jié)
以上是生活随笔為你收集整理的LeetCode 672. 灯泡开关 Ⅱ(枚举)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: LeetCode 1458. 两个子序列
- 下一篇: LeetCode 135. 分发糖果(D