LeetCode:319. 燈泡開關

class Solution {
public:
    int bulbSwitch(long long n) {
        //本題提可以轉化爲求解完全平方數的個數
        //只有完全平方數位置上的燈在一次遍歷的時候僅僅被拉一次而不是完全平方數的數字N
        //將其拆解爲N=a*b那麼在a,b次開燈泡的時候,原有的操作就會被抵消
        long long i=1;
        long long count=0;
        if(n==1)
        {
            return 1;
        }
        while(i<n)
        {
            if(i*i<=n)
            {
                count++;
            }
            i++;
        }
        return count;
    }
};
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章