n******k 发帖数: 5 | 1 時間, 昨天上午,
關鍵詞
1. Stack vs Heap
2. Set implemented by (Hash vs Tree)
3. Recursive vs Iterative.
4. Coding, check if a number power of 3.
貌似太容易了。
如果能進入第二輪電面,估計是無情的暴風雨。。。。 |
y********9 发帖数: 130 | |
j*****y 发帖数: 1071 | 3 这个 power of 3 怎么搞阿, 3进制?
【在 n******k 的大作中提到】 : 時間, 昨天上午, : 關鍵詞 : 1. Stack vs Heap : 2. Set implemented by (Hash vs Tree) : 3. Recursive vs Iterative. : 4. Coding, check if a number power of 3. : 貌似太容易了。 : 如果能進入第二輪電面,估計是無情的暴風雨。。。。
|
d**********x 发帖数: 4083 | 4 电面应该都差不多。。。
【在 n******k 的大作中提到】 : 時間, 昨天上午, : 關鍵詞 : 1. Stack vs Heap : 2. Set implemented by (Hash vs Tree) : 3. Recursive vs Iterative. : 4. Coding, check if a number power of 3. : 貌似太容易了。 : 如果能進入第二輪電面,估計是無情的暴風雨。。。。
|
d**********x 发帖数: 4083 | 5 如果是小数据类型的话,直接查表
如果是大整数的话,先计算
3^(2^n), 3^(2^(n-1)), ..., 然后试乘吧。
从大到小,每个数参与一次试乘,就能把指数的2进制形式试出来
也许有更好的办法,我这个是瞎蒙的
【在 j*****y 的大作中提到】 : 这个 power of 3 怎么搞阿, 3进制?
|
h*****7 发帖数: 60 | 6 沾人品 乱写一个3的幂睡觉。。
bool pow3(int a)
{
a = abs(a);
if (a==0) return false;
if (a==1) return true;
while (a == sqrt(a)*sqrt(a))
{
a = sqrt(a);
}
return (a%3 == 0) ? pow3(a/3) : false;
}
或者范围小就建表binary search |
c******e 发帖数: 108 | |
s****J 发帖数: 161 | |
f*********d 发帖数: 140 | |
b******l 发帖数: 758 | |
|
|
t*p 发帖数: 95 | |
y**e 发帖数: 645 | |
p**p 发帖数: 2493 | |
c********s 发帖数: 817 | |
L*****k 发帖数: 327 | 15 bless!
【在 n******k 的大作中提到】 : 時間, 昨天上午, : 關鍵詞 : 1. Stack vs Heap : 2. Set implemented by (Hash vs Tree) : 3. Recursive vs Iterative. : 4. Coding, check if a number power of 3. : 貌似太容易了。 : 如果能進入第二輪電面,估計是無情的暴風雨。。。。
|
s********k 发帖数: 6180 | 16 没有时间复杂度限制,很简单
bool pow3(int x){
while(x%3==0) x /=3;
return x==1;
}
【在 h*****7 的大作中提到】 : 沾人品 乱写一个3的幂睡觉。。 : bool pow3(int a) : { : a = abs(a); : if (a==0) return false; : if (a==1) return true; : while (a == sqrt(a)*sqrt(a)) : { : a = sqrt(a); : }
|
j*****y 发帖数: 1071 | 17 这个肯定不是 G家需要的风格。
【在 s********k 的大作中提到】 : 没有时间复杂度限制,很简单 : bool pow3(int x){ : while(x%3==0) x /=3; : return x==1; : }
|
s********k 发帖数: 6180 | 18 那G家需要啥风格啊?你要说时间复杂度可以更好,那可以优化,但是如果没有这个要
求,简单风格难道不好?
【在 j*****y 的大作中提到】 : 这个肯定不是 G家需要的风格。
|
c**m 发帖数: 535 | 19 x=0
【在 s********k 的大作中提到】 : 那G家需要啥风格啊?你要说时间复杂度可以更好,那可以优化,但是如果没有这个要 : 求,简单风格难道不好?
|
c**********n 发帖数: 13712 | |
|
|
l*****a 发帖数: 559 | 21 corner case不说出来我都忽略了。
【在 c**m 的大作中提到】 : x=0
|
s********k 发帖数: 6180 | 22 that's right.没考虑这个corner case
【在 c**m 的大作中提到】 : x=0
|
d**********x 发帖数: 4083 | 23 看错了
这题目如果是32位int,没有任何好考的
因为32位int里面的3的n次幂不会超过32个
直接查表比什么都快。
【在 s********k 的大作中提到】 : that's right.没考虑这个corner case
|
m******s 发帖数: 1469 | 24 Bless
【在 n******k 的大作中提到】 : 時間, 昨天上午, : 關鍵詞 : 1. Stack vs Heap : 2. Set implemented by (Hash vs Tree) : 3. Recursive vs Iterative. : 4. Coding, check if a number power of 3. : 貌似太容易了。 : 如果能進入第二輪電面,估計是無情的暴風雨。。。。
|
h*****7 发帖数: 60 | 25 原来如此 学习了
【在 d**********x 的大作中提到】 : 看错了 : 这题目如果是32位int,没有任何好考的 : 因为32位int里面的3的n次幂不会超过32个 : 直接查表比什么都快。
|
g***j 发帖数: 1275 | 26 如果是相除的话,也最多除32次啊
那么查表的时间复杂度是多少?挨个比也需要时间吧?
看错了这题目如果是32位int,没有任何好考的因为32位int里面的3的n次幂不会超过32
个直接查表比什么都快。
【在 d**********x 的大作中提到】 : 看错了 : 这题目如果是32位int,没有任何好考的 : 因为32位int里面的3的n次幂不会超过32个 : 直接查表比什么都快。
|
s********k 发帖数: 6180 | 27 按照google的习惯,这个就是O(1)和O(N)的区别了。
32
【在 g***j 的大作中提到】 : 如果是相除的话,也最多除32次啊 : 那么查表的时间复杂度是多少?挨个比也需要时间吧? : : 看错了这题目如果是32位int,没有任何好考的因为32位int里面的3的n次幂不会超过32 : 个直接查表比什么都快。
|
f*******7 发帖数: 943 | |
l*********u 发帖数: 19053 | 29 bless
【在 n******k 的大作中提到】 : 時間, 昨天上午, : 關鍵詞 : 1. Stack vs Heap : 2. Set implemented by (Hash vs Tree) : 3. Recursive vs Iterative. : 4. Coding, check if a number power of 3. : 貌似太容易了。 : 如果能進入第二輪電面,估計是無情的暴風雨。。。。
|
d**********x 发帖数: 4083 | 30 查表可以2分
挨个比过去就败了
而且就像我一开始的反应。。。我觉得他可能问的是大整数
32
【在 g***j 的大作中提到】 : 如果是相除的话,也最多除32次啊 : 那么查表的时间复杂度是多少?挨个比也需要时间吧? : : 看错了这题目如果是32位int,没有任何好考的因为32位int里面的3的n次幂不会超过32 : 个直接查表比什么都快。
|
|
|
a*1 发帖数: 4161 | |