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

歡迎光臨散文網(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ó)家法律
贺州市| 抚松县| 清原| 白朗县| 宁夏| 那曲县| 迁安市| 赫章县| 雷山县| 图木舒克市| 弋阳县| 保定市| 星座| 和田市| 兴海县| 页游| 富裕县| 乡城县| 云阳县| 岳阳市| 文登市| 罗江县| 西华县| 大田县| 英山县| 芜湖市| 新干县| 沂水县| 阿拉善左旗| 武强县| 察雅县| 五莲县| 镇远县| 长垣县| 山阴县| 万源市| 苏州市| 佳木斯市| 阳信县| 临夏县| 金门县|