乙個房間中有 n 盞燈最初是開著的,並且牆上有 4 個開關。在對開關進行 m 次未知的操作後,你需要返回這 n 盞燈有多少種不同的狀態。解題思路:假設 n 盞燈的標號為 [1, 2, 3 …, n], 4 個開關的功能如下:
1.將所有燈從開變成關,從關變成開。
2.將標號為偶數的燈從開變成關,從關變成開。
3.將標號為奇數的燈從開變成關,從關變成開。
4.將標號為 (3k + 1) 的燈從開變成關,從關變成開,k = 0, 1, 2…
這個題目一開始看確實有些看不大懂,按照題目要求第一反應就是程式去實現開關邏輯,但仔細一想實現起來非常困難。其實這個題目是乙個很簡單的分類討論問題,按照題目要求可知燈泡的狀態總共有以下幾種
下面列出m、n所有的可能情況
n\m123
…1222
22344
43478
8…478
8 以上結果有興趣可以自行推斷,**就比較簡單了,把分析的結果貼上去就行了,特別要注意n或m為0的情況
public
intfliplights(int n, int m)
if(m==0)
if(n==1)
if(n==2)
return
4; }
if(m==1)
if(m==2)
return
8;}
LintCode刷題之路(四) 醜數
設計乙個演算法,找出只含素因子2,3,5 的第 n 小的數。符合條件的數如 1,2,3,4,5,6,8,9,10,12 樣例 如果n 9,返回 10 挑戰 要求時間複雜度為o nlogn 或者o n 思路 根據醜數的定義可知,每乙個醜數都是由前面的醜數生成。例如 2是由1 2得來,3是由1 3得來。...
模切行業的電子商務之路
模切行業是乙個介於機械和電子行業之間的新興行業,它滲透於各行各業之中,因為大多數行業都會要用到模切,據某機構統計,全國模切廠家或公司有十萬之多,大多數分布在上海,天津,北京,廣東,浙江,江蘇等經濟較發達的地區。但是這麼大的乙個行業,它們的電子商務之路卻方興未艾,較於其他化工,機械,電子等行業就要落後...
httpRunner學習之路 問題之路
成長過程中,都會遇到問題,就看如何解決!今天想再次研究該框架。因為前面又碰到了一些問題。而技能有限,又需要再次學習js的各項技能。實在耗不起精力。轉而繼續對自己擅長的python入手。按照教程說,先來嘗試一番。建立工程進行開始第一步吧。用相關命令直接生成對應的專案資料夾。hrun startproj...