继续继续~
遍历每一天,最后再完成剩下的,明白了一个最简单的向上取整方法,就是在原来的数基础上加上n-1
关于进制的一道数学题,首先这个数肯定小于base(进制),大于进制的就能缩小,也就不能被自己整除。 判断是否符合的条件,就是取mod之后是否为1。数学证明很简单。翻译成自然逻辑就是:每次加上一个base数都会进一位这样数字的和会大1,所以加上一个base-1的数,数字的和就不变咯~
public class InterestingDigits { public int[] digits(int base) { int k = 0; for (int i = 2; i < base; i++) { if (base % i == 1) { k++; } } int[] ans = new int[k]; k = 0; for (int i = 2; i < base; i++) { if (base % i == 1) { ans[k] = i; k++; } } return ans; }}模拟小球在空间撞来撞去,下面算法比较好的几点,矩阵代表着坐标,一个砖块是2*2的坐标,只有中心点有状态。小球的碰撞判定也是按照中心点状态来算的。其次就是无解的判断。这个for循环蛮好的。 for (int seconds = 0, lastBreak = 0; seconds < lastBreak + 4 * height * width; seconds++)
就是如果小球用所有角度撞了所有位置,也没有新的破碎,那么就是无解了。传说中的鸽笼原理。
新闻热点
疑难解答