这题本身其实并不难。按照步骤做即可,但是根本步骤出来的答案让人显而易见的容易猜测一个事实就是这就是求其整数(平方根)。结果真的是。。。哪位数学大牛来帮忙证明下啊。跪求。
这个是根据步骤写的代码。然而超时了。。挂不得分类是数学和难题。。。
class Solution(object):
def bulbSwitch(self, n):
"""
:type n: int
:rtype: int
"""
import math
return int(math.sqrt(n))
没错,这个代码通过了,就是求平方根的整数部分。
from collections import Counter
def toggle(x):
if x == 1:
return 0
else:
return 1
if n == 1:
return 1
for i in range(n):
if i == n - 1:
print list1
list1[-1] = toggle(list1[-1])
print list1
a = Counter(list1)
return a[1]
if i == 0:
list1 = [1] * n
else:
for j in range(n / (i + 1)):
list1[(i + 1) * j + i] = toggle(list1[(i + 1) * j + i])
这个是根据步骤写的代码。然而超时了。。挂不得分类是数学和难题。。。
本文探讨了一个看似复杂的编程问题,其实质是求一个数的平方根的整数部分。给出了两种解决方案:一种简洁高效的数学方法,另一种是遵循特定步骤的算法实现,但后者在实际运行中遇到了性能瓶颈。

895

被折叠的 条评论
为什么被折叠?



