重新站起到2025NOIP失败集

· · 生活·游记

(语文废柴,第一次写)

几乎半年没碰电脑了,看着一串串代码,既陌生有熟悉。(当时是连reverse都忘了是啥意思)我所处的地方在省内信息学不算好,其实教育资源就没啥好的,导致我去南京求学时别人看我的代码能力直摇头。

当时的我特别特别,我之前的老师是一个当地大学的信息老师,不是专业的,但在我的城市这已经算不错了。他当时一言不合就——直接一维数组模拟,导致我学了3年都不知道好多东西(例如map,queue,vector......)

好不容易拜师成功,刚上课时我“老师,这东西没见过”问了至少50次,还有老是犯低级错误(cin<< , vector.push_end()......)反正就是贼差,错误只有想不到,没有做不到。

老师有次开放模拟赛,叫文件读入,就我一脸懵逼(其实之前我也考过CSP,然后“freopen”没加),后来才知道,它就是我爆零的罪魁祸首。后来养成了加freopen的习惯,下面贴一行当时我的代码

B3927

#include<bits/stdc++.h>
using namespace std;
map<string,string> mp;
string a,b;
int n;
int main(){
    //freopen("yang.in","r",stdin);
    //freopen("yang.out","w",stdin);
    cin>>n;
    for(int i=1;i<=n;i++){
        cin>>a;
        cin>>b;
        mp[a]=b;
    }
    cin>>a;
    b="";
    for(int i=0;i<a.size();i++){
        if(a[i]>='a'&&a[i]<='z'){
            b+=a[i];
        }
        else{
            if(!b.empty()){
                if(mp[b].empty())cout<<"UNK";
                else cout<<mp[b];
            }
            cout<<a[i];
            b="";
        }
    }
    if(!b.empty()){
        if(mp[b].empty())cout<<"UNK";
        else cout<<mp[b];
    }
    return 0;
}

慢慢的,我又熟练起来,虽然每天都被“严刑拷打”,但世界以痛吻我,我直接躺平了!

“反正我也看不懂,就趴一会吧。”我当时的心理状态,然后,俩星期后,我考得太差,被面谈了。

后面我决定痛改前非,躺的更平了。一点点落后他人,直到我有一天看到我老师有个学生去考NOIP,本人的胜负欲瞬间就出来了,又站起来继续学了。(当时我才知道链表)

一点一点,一次偶然的机遇,让我认识到了洛谷,那天我老是的平台更新,就让我们再洛谷上刷。

洛谷慢慢成了我的第二个“学校”,我几乎每天都要去,我会因为那个首页的运势而悲喜,也会因为想做题而熬到深夜。夜深人静,我就坐在那,静静的思考,我喜欢宁静,但夜晚总会闪过一丝孤单,一丝寂寞,内心空空落落。做不出来题时也会感到迷茫,自我否定。我想过在洛谷上找个志同道合的洛友,有困难时一起努力,一起讨论,无聊时还可以谈天谈地,但我怕自己太菜,就一直不敢想,不敢做,不敢表达,前几天,政治课教了我们要敢于表达自己,我思索良久,终于决定加上去了。(如果真又愿意的,可以直接关注私信吧,我也没用过,我也不知道行不行。)

差的有点远了,一天一天过去,我知识面不断拓展,能力不断提高,慢慢的能做绿题了(虽然还是菜),但不知为何,我就是不喜欢用printf,给你们看一下我现在的代码:

//P1144

#include<bits/stdc++.h>
using namespace std;
const int N=1e6+5,ANS=100003;
int n,m,minn[N],ans[N];
bool bl[N];
vector<int> vec[N];
queue<int> que;
int main(){
    //freopen("minn.in","r",stdin);
    //freopen("minn.out","w",stdout);
    ios::sync_with_stdio(false);
    cin.tie(nullptr);
    cin>>n>>m;
    int x,y;
    for(int i=1;i<=m;i++){
        cin>>x>>y;
        if(x==y)continue;
        vec[x].push_back(y);
        vec[y].push_back(x);
    }
    que.push(1);
    bl[1]=1;
    minn[1]=1;
    ans[1]=1;
    do{
        x=que.front();
        que.pop();
        for(int t:vec[x]){
            if(minn[t]==0){
                minn[t]=minn[x]+1;
                que.push(t);
            }
            if(minn[x]+1==minn[t]){
                ans[t]+=ans[x];
                ans[t]%=ANS;
            }
        }
    }
    while(!que.empty());
    for(int i=1;i<=n;i++){
        cout<<ans[i]<<"\n";
    }
    return 0; 
}

对,就是这样。

到了比赛那天了,紧张++的我去考初赛。普及组轻松拿捏,提高就不是了。

我了个——最后五分钟,还有一大题没写,一算52分,不够啊,拿出橡皮,写上ABCD扔四次(一次25%对,四次不就100%了吗)最后,上天发力了,最后一大题10题我蒙对了7题,过了。

第二轮,普及除了最后一题其余拿捏,提高,拼死拼活把第一题贪心写完,两小时过去了,看见第二题数据量,眼前一黑,随意骗了点分,糊弄过去了。后面两题是看都不想看,心态已经崩了。全骗了点特殊分,正好结束了。完美,比分数线高10分,学校推荐我去考NOIP了。

南京外国语学校,我来了!考试前天晚上,我老师跟我说不紧张,只是去体验一下,毕竟才初二。那天我再车上听音乐,突然头晕,原本临时抱拂脚的计划也破灭了。趴在酒店差点吐了,早早就睡觉了。但做了噩梦,做的啥我也忘了,只知道起来时冷汗直冒。

考场上,看着第一题糖果店,想了十分钟突然想到思路,写了一小时解决。第二题看了一眼,过(实在不擅长那种)第三题树的价值,想了一小时想到思路了,写上去,正在改呢,结果时间没了(其实写的时候太饿了,吃了好多东西),然后浑浑噩噩的出来了。

说实话,南京外国语学校的饭挺好吃,学校也比我的智能多了,里面的文具店我买了好多笔和本子送给玩的好的同学。

回去了,把最终答案提交洛谷民间数据,一百多分,二等稳了。

焦急的等待,出分的那一刻我震惊了——爆零,突然想起来,那freopen前的注释忘去掉了!!!!!!

有一次陷入自责,要是能再来一次,再来一次......

可一切都过去了,无法改变,只能继续前进,或就此结束。

但我还是选择前进,不是看到希望再努力,而是努力了才看到希望。或许我的选择远没有高一失利的人难,但这对于一个玻璃心的我算得上惊天的大事变。

现在的我已经今非昔比,但这件事久久萦绕在我心上,跳不出去,走不出来,等待着下一次NOIP的刷新……