闲话 Day10

Posted -Houraisan-Kaguya

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了闲话 Day10相关的知识,希望对你有一定的参考价值。

已经是第 10 期了。
总体来说还是很高产的吧(?)

然而,写闲话是需要大量思考的吧。
而最近比较困,所以啥也没想,或者说至少除了学术以外啥也没想。

然后才想起来,我要写的是闲话,不是什么大众读物。
不需要有什么主题,不需要有大致内容或者方向。
就随便写一写漫天乱逛可能更像是一篇闲话吧。


实际上,最近越来越没有时间思考了。
大体原因可能是因为天比较热,所以很困。
一般躺到床上很快就会睡着,来不及想一些什么其他东西。
即使是这样白天也会犯困。

不过写闲话确实是一个比较好的事。
至少用来写闲话的时间可以边想边写。

不管怎么说吧,我还是认为独立思考的价值很大。
至少当你得出来结论的时候,同时也完全理解整个推导的过程。
或者说,同时具备了自行推导整个过程的能力。这比记个结论再记个推导过程要有用的多。

或者说,了解思想背后的本质是比较重要的。
毕竟精力是有限的,很难说把所有的东西都学一遍,都记下来。
而理解了某种思维方式之后从效果上看类似于学一遍了。
而且拓展性强。

不过还有一个问题,就是独立思考有些时候可能更费时间。
例如某些多项式科技题,如果完全自行推导可能需要数十年的时间。
或者根本完不成。
(自行发明生成函数是吧)

也就类似于自己想题和看题解。
很难把握好一个度,什么时候自己想什么时候看题解。
还是看自己的习惯吧。

而且如果只是想应付完高中课程/竞赛的话,直接记结论,会用即可。
如果真的感兴趣可能才会深究吧。


画了个分割线,因为刚才去做了个水题回来。
另外,话题要变了。

下午一来就看到了一个超大的乐子。
花了将近半个小时终于把全过程补完了。

也是一个很常见的现象吧。
学到后面也就明白了,有些差距不是想补就能补的。
但是还是有人不想接受啊。

插一句,cz 直接把人往知乎上挂也算是离谱了。
而且语言上有点攻击性。
完了我以后写东西也要注意用词了。

对这件事不评价。
毕竟我只是一个乐子人而已。
感觉闹得有点大。

还好我的闲话没多少人看。
要不然说不好哪一天就被人爆破了(划掉)

无内鬼,来点相关的东西。

由于切实的感受到了,所以我大抵是相信存在天赋这类东西的。
不过一直以来很难解释这到底是个什么东西。

当然,也只是观测现象得知,确实存在一部分人,能够在投入很少的情况下获得很高的成绩。
这个完全可以解释为学习效率的差距和方法的不同。
但是。。。。

算了例子不举了,不是很好。
越来越感觉思维方式的影响非常大。
尤其是在 OI 方面。

这个东西很难说是先天就有的还是后天培养的。
虽然我总体上倾向于后天培养的。
但是通过一些常见现象的观测,例如 OI 中的男女比例,以及 OI 中的头像男女比,可以发现先天条件还是起到了不小的作用的。

或许这种东西就是人们口中的天赋?
不清楚。不下定论。


关于中二。

好久没有听到过这个词了。
或者说,平时一直在学校,完全感受不到。

但是上次放假在 B站 看视频的时候遇到了。
仔细想想,自己是不是也沾一点啊。

其实很类似于前些年人们对未来的畅享。
在疫情之前一段时间,经济仍然在发展。
那个时候,人们甚至还在相信社会会加速发展。

然而到了现在呢?
更多的人可能开始回想起来马克思说的一些话了。

这个也是和人们的惯性思维有关系吧。
看到加速增长的态势,自然而然会认为接下来也会加速增长。
看到增长过后的急速下滑,也才会想起来发展是起伏不定的。
好像从古至今都是这样。
然而并没有多少人能够时刻记住历史的教训。

考虑把上述东西放到个人经历上来。
考虑一下各位的经历?
大抵都是从小开始成绩很好吧,无论初中还是高中都来到了自己想要的地方。
现在又来学竞赛,已经有资格参与 NOI 了。

通过大致观察不难发现,无论是智力水平还是其他能力,一直以来都是呈现一个加速增长的态势。
而且一直以来没有经历过任何大的挫折。
可以说能够一路发展到现在其实运气也很不错了。
那么再往后面考虑。。。。。

如果想的足够远的话可能会多少沾点吧。
大致可以归结为惯性思维。

但是,根据前人留下来的经验,不受限的高速发展是很困难的。
大概都会遇到瓶颈期或者是大的挫折。
但是这个东西什么时候会来?不知道。

所以也不得不提前做好各种准备了。。。

另外,转变发展模式也是很重要的吧。
或者说,世界观重构一类的。
(这种东西在上了初中之后就开始定期重构了)
接下来要干什么,这也是我一直在想的吧。
虽然没有结果就是了。


大致就写到这里吧。
我也没啥想写的了。
很多东西还是很难直接写出来的。
或者说,很难把大致意思描述清楚。

可能因为我的思维方式比较抽象?
或者说理解不充分/没有想全一类的。

当然,这不重要。
大概,该懂的东西早晚都会懂吧?

闲话 Day9

闲话 Day3:

所以,就不得不功利化一点了。

而实际上呢。。。

这是什么,有意思,研究一下。
这是什么,好优秀,实现一下。
这是什么,计数题,绿的,不会,下一个。
这是什么,计数题,黄的,不会,下一个。
。。。。。

我终于意识到了做事凭兴趣这一点是很难改变的。

所以这几天又去仔细参悟了一下分治与分治数据结构。
本来想记下来的,但是感觉东西很多很费时间。
所以等过几天再说吧。
大概在南京的时候会写一写吧。

这次是学术闲话来着,所以就把刚刚口胡出来的东西写一写吧。


线段树分治

这道题正解貌似是点分治一类的东西。
但是我记得在模拟赛里面遇到这个题的时候题解给的是线段树分治。
事实上,使用线段树分治 + \\(O(1)\\) LCA 可以做到 \\(O(n \\log n)\\) 的时空复杂度。
还是非常优秀的。

然而,今天突然就想到了一个问题:
线段树分治的空间复杂度能不能做线性。

(主要是参悟了分治数据结构与分治的关系之后感觉很可做)

事实证明可以做到而且并不难想。

首先前置知识,为什么线段树区间修改的复杂度是对的。

当一个区间在线段树上向下递归的时候,分为两种情况:

  1. 左右都不贴边界。
  2. 贴左边界或贴右边界。

容易发现,对于第一种情况,最多只会分裂一次,然后变成两个贴边界的区间。
而对于第二种情况,要么单向递归,要么双向递归但是其中一边是满的。
而满的区间显然就不会向下递归了。

所以最终的复杂度为 \\(O(\\log n)\\),严谨分析的话最多会访问 \\(4 \\times \\log n\\) 个点,修改最多影响到 \\(2 \\times \\log n\\) 个点。

好了回到原问题,线段树分治。

假如现在有 \\(m\\) 个区间,我们先不把它们都下放到线段树对应节点上,先统一堆到根节点。
现在我们要去遍历整棵树了,到达一个节点的时候再去把区间都下方。

首先考虑左右都不贴边界的情况,显然不会影响空间复杂度。
毕竟都是单向递归,而且只会分裂一次。

再考虑贴左边界的情况,其实也好处理。
要么只向左递归,不考虑。
要么左右递归,但是向左递归的部分直接就是整个节点修改,所以贡献是 \\(O(1)\\) 的。
而且接下来马上就要递归左子树了,马上就会被消掉。

最后考虑贴右边界的情况,这个有点寄。

如果只向右递归还是不用处理。
考虑左右都递归。
如果我们直接分裂到左右子树上,会导致某个区间直接霸占一整个左链的所有右儿子。
然后空间复杂度又变成 \\(O(n \\log n)\\) 了。

事实上,我们可以先将其整个下放到左儿子上。
然后等左子树递归完了之后,再从左儿子那里拿回来。
然后下放到右子树,这个是 \\(O(1)\\) 的没有什么问题。

不理解的话可以手动模拟一下。
画出来其实有点像蕾米的翅膀来着。

这样的话相当于是一个递归又回溯的过程。
时间复杂度不变,一个区间还是只遍历 \\(O(\\log n)\\) 个节点。
但是空间复杂度直接降到了 \\(O(n)\\) 而且常数并不大。
全是 vector 操作啊那没事了。

实现的话。。。
虽然看上去上述流程很麻烦而且还要分类讨论。
但是实际上写成递归函数的话也还好。
至少并没有比常规的线段树分治难写多少。

等我有时间了去实现一个,现在先咕咕咕。


上次报了个公开赛,但是只是看了看最后一题,没有打。
我自己也在 INOH 和 STAOI 分别出了一个题。

但是,出这些题的目的是什么?

如果只是为了难住别人的话那可就太闲了,属实无意义。
如果是为了分享某些 trick 的话其实可以写博客的。
而且像我这样自己啥都不会也没啥必要去往外分享东西。。。

然后我才发现貌似这次出题比较偏离本意了。

本来确实是发现了一个有意思的东西。
然后决定出个题玩玩。
然后发现其他方法跑得也很快,可以草过去。
然后就开始对着除了这个 trick 以外的地方卡常,叠科技。
然后把其他做法卡掉了。

每一步都和上一步衔接紧密,但是总的来看完全偏离了本意。

再考虑考虑,其实有很多的事情都是这个样子。
随着时间发展完全偏离了其本意,但是又处于某些原因无法废除/修改。
或者说,甚至很多人都没有意识到。

有一些想说的例子,但是不合适,不说了。
换一个经典无害的吧。
(怎么又举这种例子啊啊啊啊啊啊啊啊啊啊)

关于出题/考试。
考试原本的目的是啥来着,选拔人才是吧。
出题也就是全面考察一下知识掌握程度和综合素养一类的。

但是随着教育的发展这东西变成了啥。
学生开始去学做题套路,应试技巧,背一些前人总结下来的模板。
真的就是一些除了应付考试啥实际意义都没有的东西。

在闲话 Day3 里面貌似稍微提到了一点,不多说了。
当时感觉,只是因为沾了不少功利化的东西才会演变成这样。

但是现在看来好像并不是。即使功利无关也会这样。
我们周围确实就存在着大量类似的无意义的东西。
有些可能类似于形式主义吧,反正大体就是完全偏离本意。

经典例子,为啥键盘上的字母是乱序排布的。

在最开始,确实是顺序排布的。
但是当时的键盘有一个很大的问题,就是不能同时按两个键,否则就会卡死。

键位顺序排布确实很有利于提高打字效率。
但是打字快了就不可避免的会出现卡死的现象,反而降低了效率。

于是有个人就发明了现在的这种键盘。
特殊构造使得常用的词块隔得比较远
发售之后,由于其非常独特,当时非常火。
再加上确实不容易卡死(打字速度下降了不少),所以后来就成为了主流键盘,一直到现在。

大概总结一下,目的是提高效率避免卡死。

但是现在呢?
现在的键盘同时按下所有键都不会卡死的吧。
字母乱序排序一定程度上不仅降低了效率,还提高了上手难度。
然而现在再也看不到顺序排布的键盘了。
甚至没有人再去提起过这个东西。

随着时间的推移和时代的发展,键盘的结构违背了其本身的目的。

对此的一种解释是,兼容性问题,习惯问题。
多数人都习惯了乱序键盘,现在推出顺序键盘没有市场。
或者说,第一批使用顺序键盘就意味着要同时适应两种不同的键盘。

但是。。。。
当时改成乱序键盘就能适应,现在改回顺序键盘就无法适应是吧。

如果多数人都能去仔细考虑这个问题的话可能键盘模式早就改回去了。
或者,改成另一种效率更高的排布方式。
普及这种东西的成本可能要远低于普及 5G 或者新款手机一类的,毕竟并不是所有人都每天接触键盘。
而且带来的收益大概是非常大的。

所以最后得出的结论是,我真闲啊。

貌似多数人都不会在每个细节处都去考虑,这种设计的本意是什么。
因此,大量的偏离本意的东西就这样被人们忽视,然后起着负作用。

大概我是没有必要关心这种东西的吧。
但是多留意一下总是有好处的。
至少可以让我少做很多毫无意义的事情。

忘了听哪里说的了,你谷要取消博客了(????)
其实也好,至少不至于以后突然翻到了现在写的博客。
然后打开一看,答辩。
就像看小学写的作文一样。

这已经将近 40 天了吧,怎么才写了 ⑨ 期闲话。
。。。。。

以上是关于闲话 Day10的主要内容,如果未能解决你的问题,请参考以下文章

js实现回放拖拽轨迹-------Day48

动手学深度学习 DIVE INTO DEEP LEARNING -- Day 01 -- 学习资料环境配置

闲话敏捷开发之一:敏捷是个啥?

6.27 闲话

「闲话随笔」势能分析法

「闲话随笔」卢卡斯定理证明