How to look forward?
我完全理解你此刻的心情。那些过去的错误像顽固的阴影,总在不经意间笼罩心头,让你反复咀嚼痛苦,陷入自责的漩涡。这种感觉真的很沉重,仿佛被无形的锁链束缚着,每次回忆都像重新揭开还未愈合的伤口。但请相信,这种反复纠结的痛苦并非你应得的惩罚,而是你内心渴望和解的信号。我们无法抹去过去的错误,却可以选择不再让它们成为今天的枷锁。 释怀并不意味着忘记,而是学会与过去的自己和平共处,找到一种方式让那些记忆不再刺痛你。以下是一些经过验证的方法,希望能帮助你一步步走出纠结: 🧠 1. 承认与接纳,而非否认或对抗 允许自己有情绪: 感到后悔、羞愧、悲伤、甚至愤怒都是正常的。不要压抑这些情绪,告诉自己:“我现在感到痛苦,这是因为我当时犯了错误,这很正常。” 允许自己感受它,但不要被它完全吞噬。找一个安全的方式表达出来(写日记、向信任的人倾诉、哭泣、运动)。 接纳“错误是人生的一部分”: 没有人是完美的。犯错是人类体验中不可避免的一部分。正是通过这些错误,我们才得以学习和成长。把错误看作是成长路上的“学费”,而非人格的污点。 接纳“过去的自己”: 用现在的眼光和智慧去评判过去的自己是不公平的。当时...
乘风.尘封.
Part I 已深度思考。用时 30s30s30s Hidden Hidedn Hidden Hidden 图书馆里的沉默草原 成长发表会那天,阳光穿过礼堂高高的玻璃窗,斜斜地铺展在座位上。我坐在台下人群之中,望着她站在台上,声音清晰而平稳地流淌在空气里,仿佛自带光芒。她演讲时微微抬着头,姿态里藏着不易察觉的紧张,却依旧从容不迫。而我,安静地坐在下面,看着聚光灯笼罩住她,如同一个遥远又清晰的梦境——这本该是我们共同拥有的舞台。 我仍记得名单公布的那天。午后的阳光懒洋洋地趴在公告栏上,我和她并肩挤在涌动的人群里,踮着脚尖,目光急切地搜寻着名字。终于,她的名字赫然在列,旁边却寻不见我的踪影。空气瞬间凝滞,喧闹声仿佛被隔开了。我脸上笑意凝固了,喉咙里干涩得发紧,只能怔怔盯着那个名字,手指无意识地蜷缩着,指甲几乎要陷进掌心。 “恭喜你啊。”我努力让声音听起来自然些,可干涩的喉咙却挤出一丝沙哑。 她猛地转过头,眼睛里亮晶晶的光芒瞬间黯淡下去,被一层浓重的忧虑覆盖了。她看着我,嘴唇轻轻动了一下,声音低低的:“这……怎么会这样?” 那语气里的困惑和失落,像细小的...
Codeforces-题解:CF2060D Subtract Min Sort
传送门 Sol 使用贪心算法。 因为我们要使操作后原数组单调不降 所以我们要让前面的数尽可能小: 先遍历一遍数组,位置为 iii 时,如果 ai<ai−1a_i<a_{i−1}ai<ai−1,就不符合条件,输出 NO; 接下来我们进行题目中的操作:选择 i−1i−1i−1,将 aia_iai 和 ai−1a_{i−1}ai−1 减去 minai,ai−1\min{a_i,a_{i−1}}minai,ai−1,由于 ai≤ai−1a_i\le a_{i−1}ai≤ai−1,所以操作相当于将 aia_iai 减去 ai−1a_{i−1}ai−1,再将 ai−1a_{i−1}ai−1 设为 000。若遍历完还没有输出 NO,就输出 YES。 123456789101112131415161718192021222324252627#include<bits/stdc++.h>using namespace std;const int N=2e5+5;int a[N];int main(){ int t; scanf...
Luogu-题解:AT_colopl2018_final_b 異世界数式
传送门 Sol 可以说是一个模拟。 对于这一题,我们使用栈(系统栈和手写栈均可)。 运用栈存储运算符号: 当遇到运算符时,将其入栈; 当遇到逗号时,输出栈顶的符号; 当遇到右括号时,输出右括号并弹出栈顶的运算符。 根据字符类型进行相应处理后直接输出转换后的中缀表达式即可。 Code 1234567891011121314151617#include<bits/stdc++.h>using namespace std;string s; stack<char> a;int main(){ cin>>s; for(char c:s){ if(c=='+'||c=='-'||c=='*'||c=='/') a.push(c); else if(c==')'){ cout<<c; a.pop(); } else if(c==',') cout<<a.t...
Luogu-题解:P13091 [FJCPC 2025] 中位数
传送门 Sol 我们使用二分答案二分结果的值 xxx。 对于检查当前的 midmidmid 是否合法,我们可以贪心将 ≥mid\ge mid≥mid 的数变为 111,否则变为 000。这样我们就可以快速得知相对大小。 考虑如何确保最优消去 000,保留 111。 对于原有的连续的 000,我们可以将其贪心区间操作,使其最终长度为 111 或 222。 对于原有的连续的 111,我们肯定选择最后再消除。 对于原有连续 222 个 000 以及 111 个 111 的情况,无论怎么消除,我们都只能变成 000,不过此时可以与后续的 000 继续拼接。 对于原有连续 222 个 111 以及 111 个 000 的情况,我们可以留到最后再消除。 处理完整的一个 010101 序列后,最后剩余 111 的数量比 000 多则存在某种解,否则就无解。 我们用栈模拟,直接记录连续个数,只要能确保最大化消掉 000 即可。 12345678910111213141516171819202122232425262728293031323334353637#include<bits...
Luogu-题解:P12677 Brooklyn Round 1 & NNOI Round 1 A - Flying Flower
题目 给定两个数组 aaa 和 bbb,以及多个查询 kkk(默认 kkk 为质数),判断在以下规则下,小 X 和小 Z 谁会获胜: 小 X 从 aaa 中选一个能被 kkk 整除的数。 小 Z 从 bbb 中选一个能被 kkk 整除的数。 比较两者选的数的大小,大的一方获胜。 思路 使用线性筛预处理所有质数。 对于每个 a[i]a[i]a[i] 和 b[i]b[i]b[i],分解其质因数,并记录每个质因数对应的最大数。 如果 aaa 中没有数能被 kkk 整除,小 Z 获胜。 如果 aaa 中有数能被 kkk 整除,且 bbb 中没有,小 X 获胜。 否则,比较 aaa 和 bbb 中能被 kkk 整除的最大数,大的一方获胜。 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364#include<bits/stdc++.h>using namespace std;con...
Luogu-题解:P9703 「TFOI R1」Average Number
传送门 Sol 易得:ac+bc=(∑i=1ni)−mn−1\frac{ac + b}{c} = \frac{\left(\sum_{i = 1}^{n} i\right) - m}{n - 1}cac+b=n−1(∑i=1ni)−m。 因为 $\left(\sum_{i = 1}^{n} i\right) - m \in \mathbb{Z} $,则 n−1=s×cn - 1 = s \times cn−1=s×c,(∑i=1ni)−m=s×(ac+b)\left(\sum_{i = 1}^{n} i\right) - m = s \times (ac + b)(∑i=1ni)−m=s×(ac+b)。 不难发现,sss 是我们需要找的一个整数值,当 m∈[1,n]m \in [1, n]m∈[1,n] 时,此时有解且我们能够找到答案。 因此我们只需二分 sss 的值即可。 随着 sss 的增加,∑i=1ni\sum_{i = 1}^{n} i∑i=1ni 比 s×(ac+b)s \times (ac + b)s×(ac+b) 增长的快,mmm 逐渐变大,因此,二分查找...
Luogu-题解:B4290 [蓝桥杯青少年组省赛 2022] 组合
传送门 关于无解的情况 我们先计算一下这些数的最大公约数,如果他们的最大公约数不等于 111,因为这组数据下我们只能买到 sumsumsum 及其倍数个的汤圆。所以遇到这种情况直接输出 −1-1−1。 DP 与其说是动态规划,不如说是递推,我们设置 faif_{a_i}fai 为 111,代表能够凑出(aia_iai 为所给出的规格),然后如果 fi−ajf_{i-a_j}fi−aj 是 111,那么 fif_ifi 也应该是 111,因为可以转化为 fi−ajf_{i-a_j}fi−aj 再加上一个 iii 号规格的汤圆。对于每一个数,我们判断它是否可以凑出来,最后没有被赋值为 111 的就是答案。 1234567891011121314151617181920212223242526272829303132333435363738394041424344#include <bits/stdc++.h>const int N = 1e6 + 10;typedef long long ll;using namespace std;int num[30]...
Luogu-题解:P10783 【MX-J1-T3】『FLA - III』Anxiety
传送门 思路 我们先找 $ x,y $ 在树上路径的中点,如果路径上点数为奇数,那么就仅存在一个中点 $ n $;否则就会存在两个中点 $ n_1,n_2 $。 第一种情况:易得:到 $ x,y $ 距离均不超过 $ k $,相当于到 $ n $ 距离不超过 $ k - \frac{dis - 1}{2} $(其中 $ dis $ 为路径长度)我们可以先 DFS 预处理某个点 $ i $ 子树内到它距离不超过 $ j $ 的点的权值和 $ v_{i,j} $。先将答案加上 $ v_{n,k - \frac{dis - 1}{2}} $,然后向上跳,计算子树外的权值就可以啦。 第二种情况:若 $ n_1 $ 是 $ n_2 $ 的儿子,则到 $ x,y $ 距离均不超过 $ k $,等价于 $ n_1 $ 子树内到 $ n_1 $ 距离不超过 $ k - \frac{dis - 2}{2} ,,, n_1 $ 子树外到 $ n_2 $ 距离不超过 $ k - \frac{dis - 2}{2} $。同样统计就可以啦~ 12345678910111213141516171819202...
Luogu-题解:P12334 注视
传送门 核心性质 对于任意正整数 xxx,其数位和 f(x)f(x)f(x) 满足以下性质: 1.f(x)≡x(mod9)f(x) \equiv x \pmod{9}f(x)≡x(mod9) 证明:设 $ x = a_n10^n + a_{n-1}10^{n-1} + \cdots + a_110 + a_0 $ 由于 $ 10^k \equiv 1 \pmod{9} $,故 $ x \equiv a_n + a_{n-1} + \cdots + a_1 + a_0 \equiv f(x) \pmod{9} $。 f(x2)≡x2≡(f(x))2(mod9)f(x^2) \equiv x^2 \equiv (f(x))^2 \pmod{9}f(x2)≡x2≡(f(x))2(mod9) 同时有 $ f(x^2) \leq (f(x))^2 $。 思路 当给定 y=f(x2)y = f(x^2)y=f(x2) 时,我们可以从 $ \lceil \sqrt{y} \rceil$ 开始枚举可能的 $ f(x) $,因为 $ f(x^2) \leq (f(x))^2 \Righta...

