这种数学题最好纸上画画找找规律,光靠想是想不出的。
这题如果用O(n2)的程序模拟过程会tle,而且也不会是MEDIUM题了。
事实是,对于6,会在1,2,3,6分别打开和关闭;那对于4,只会在1,2,4打开和关闭。所以完全平方数的灯泡最后才会被toggle奇数次。
public int bulbSwitch(int n) {
return (int)Math.sqrt(n);
}
据说是GRE数学题。
这种数学题最好纸上画画找找规律,光靠想是想不出的。
这题如果用O(n2)的程序模拟过程会tle,而且也不会是MEDIUM题了。
事实是,对于6,会在1,2,3,6分别打开和关闭;那对于4,只会在1,2,4打开和关闭。所以完全平方数的灯泡最后才会被toggle奇数次。
public int bulbSwitch(int n) {
return (int)Math.sqrt(n);
}
据说是GRE数学题。