这个题目需要求时针和分针成180度的次数和对应时间点,我们知道时针每个小时走30度,每分钟还会走0.5度,分针每分钟走6度,所以要求的夹角就是abs(时针走的角度-分针走的角度)=180即可。那么abs(30 h + 0.5 m - 6 m) = 180 -> 30 h - 5.5 m = ±180 -> m = (30 h ± 180) / 5.5所以只需要遍历h=...
Articles published by SnowKagura
SnowKagura- Home
- SnowKagura
这个题目比较恶心,直接进行交换的循环会有重复的交换导致最终结果不符合,顺时针旋转90度,需要先转置,再左右翻转,转置相当于把右上方的部分跟左下方的部分进行...
这道题要求最长的连续序列,所以我们把所有的数录入到哈希表里面,用 map[int]bool,然后遍历这个哈希表,如果对应的 k-1 是不存在的说明这是一个序列起点,然后循环遍历到 cur+1 不存在,对应累计下来的序列长度是连续序列,且对应的长度用来更新最大长度,按照这个流程下来,最终的结果就是最大序列长度。func longestConsecutive(nums []int) int { ...
这道题需要注意的是k可能不止一位数,所以需要按照下面的规则进行:读取到 [ ,把当前的读取到的字符串和 repeat 值分别存储到一个栈。每次读到 a-z...
这个题目就是需要判断给定字符串能否由多个相同子串构成,如果可以就返回true。构造一种比较巧妙的方法是将s拼接两次,变成2s,然后掐头去尾,剩下的部分如果包含原本的s,说明是可以由子串构成,因为一旦字符串存在重复的构成,就一定在对应的偏移存在构成,例如 abcabc->abcabcabcabc->bcabcabcab,这里面是会有abcabc的。func repeatedSubs...