Candy

按照规则给每个小孩发糖果

  1. 每个小孩的糖果数至少为 1
  2. 每个小孩获得的糖果数比他临近的, 并且权重比他小的小孩获得的要多

 

my solution(12ms, 100.00%)

虽然做出来了, 但是并不高兴 = =, 因为代码太过复杂

整体代码会有 3 次遍历, 但是代码太多, 太复杂了...

如果没有看到最好算法的简洁程度, 我可能还能再高兴一下...

 

best solution

(做完题的喜悦被冲刷得干干净净..., 啊... 真的是羞愧难当啊...)

(我为什么总是把问题复杂化了呢...)

逻辑上大致相同, 只不过他只需要一次 反向遍历, 一次 正向遍历

其中每次遍历所需要判断的条件都十分简单并且清晰