1364: 開燈與關燈
時間限制: 1 sec 記憶體限制: 128 mb
[提交][狀態][討論版]
題目描述
有乙個叫做mabu的人在大學的走廊裡面反覆開燈和關燈。每個燈泡都有各自的開關,如果燈是關著的,那麼按開關後就會開燈,再按一次則會將其關上。最初的時候所有燈都是關上的。
mabu做了一件很奇特的事情:如果走廊裡有n個燈泡,他就在走廊裡來回走n次。在他走第i次的時候,只按動可以被i整除的位置(位置編號1到n)上的開關。在他走到走廊盡頭,然後走回初始位置時,不會按動任何開關。你的任務是確定最後乙個燈泡的最終狀態。它是開著的,還是關著的?
輸入輸入每一行將給出乙個走廊裡的電燈總數n(n<=2^32-1)。n=0表示輸入結束,你的程式不應處理這一行。
輸出如果燈炮開著,輸出「yes」;如果是關著,輸出「no」。每個資料在單獨的一行輸出。
樣例輸入
3
6241
8191
0
簡單題:
1.直接統計n的因子個數。
2.想深入點,根據數學特性,因為只要知道n因子個數的奇偶性也可以不統計。
n = x^2一定是奇數個因子~
ac_code:
直接統計:
#include
using namespace std;
typedef
long
long ll;
intmain()
}if(res &
1) cout<<
"yes"
"no"
<}return0;
}
想深入點,可以節省**量,看起來更巧妙!!
#include
using namespace std;
intmain()
return0;
}
思考問題的方法
1.極限法 今天看到hash表,說要讓hash表上的鍊錶分布的均勻才是好的hash函式.當時就在想為啥要分散均勻呢?靈光一閃,如果所有鍊錶都在乙個雜湊值下的,那麼資料查詢起來不就又回到了o n 了嗎?那使用hash表的意義就不存在了.因為hash表在沒有衝突時的時間複雜度是o 1 2.多去模擬 比如...
像「電腦」那樣思考問題?!
軟體開發人員經常需要接觸使用者,得到使用者的需求。在這個過程中,事實就是乙個 翻譯 的過程 使用者從他的工作的角度出發,需要電腦來為他輔助處理哪些事情,而技術人員需要從電腦可以實現的角度來設計這些過程或者功能。因而軟體技術人員需要用採用像電腦那樣來思考使用者的問題。我在接觸使用者的過程中,經常遇到很...
Excel思考問題的方式
好比如,現在咱們需要將第一周 第二週 第三週 第四周 等e e列裡的 每一周的 第二個數值 提取出來。那麼我們手動提取了幾個。如果生產一百多周那不是要累死?現在咱們先找到部分 我們需要的資料,先建立乙個小的模型 然後再往大的上面套 我們將每一周的第二個數值,所在第幾行 提出來。那麼我們就要取e e列...