最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

一道投機(jī)取巧的算法題

2019-05-04 21:25 作者:吳師兄學(xué)算法  | 我要投稿

取巧一時(shí)爽,一直取巧一直爽~

3 的冪

題目來(lái)源于 LeetCode 上第 326 號(hào)問(wèn)題:3 的冪。題目難度為 Easy,目前通過(guò)率為 43.5% 。

題目描述

給定一個(gè)整數(shù),寫一個(gè)函數(shù)來(lái)判斷它是否是 3 的冪次方。

示例 1:

輸入:?27
輸出:?true

示例 2:

輸入:?0
輸出:?false

進(jìn)階:
你能不使用循環(huán)或者遞歸來(lái)完成本題嗎?

題目解析

正常的思路是不停地去除以 3,看最后的迭代商是否為 1。這種思路的代碼使用到了循環(huán),逼格不夠高。

這里取巧的方法 用到了數(shù)論的知識(shí):3 的冪次的質(zhì)因子只有 3

題目要求輸入的是 int 類型,正數(shù)范圍是 0 - 2^31,在此范圍中允許的最大的 3 的次方數(shù)為 3^19 = 1162261467 ,那么只要看這個(gè)數(shù)能否被 n 整除即可。

代碼實(shí)現(xiàn)

class?Solution?{
????public?boolean?isPowerOfThree(int?n)?{
?????????return?n?>?0?&&?1162261467?%?n?==?0;
????}
}


一道投機(jī)取巧的算法題的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
仲巴县| 安顺市| 襄城县| 安乡县| 静海县| 宜州市| 塔城市| 平陆县| 华池县| 嘉禾县| 汝城县| 革吉县| 吐鲁番市| 崇礼县| 南汇区| 澳门| 大悟县| 博客| 鹤山市| 林芝县| 铜山县| 岳池县| 赣州市| 荆门市| 虞城县| 延川县| 洛阳市| 南投县| 阿拉善右旗| 洪江市| 通榆县| 龙游县| 宁国市| 湄潭县| 南皮县| 江永县| 德化县| 甘孜| 榆树市| 双辽市| 贵港市|