2024 國慶集訓日記

Trubiacy發表於2024-10-02

DAY 1

MORNING

6:00 上學的鬧鐘沒關,被迫醒來)開啟 QQ 空間發現生物集訓的女神 5:00 就起來捲了【強行起床洗漱。

上午是 zhx 的課,講的是前一天晚上熬夜做的那套題,最大的感覺是還有好多演算法沒掌握好。

中午吃的 3WiCH,好久沒吃了好吃😋,上上期《音樂緣計劃》拿來下飯。

AFTERNOON

一套模擬題( zhx P199 ),應該是這段時間來做的比較簡單的一套題吧【狂拿部分分。

做題順序:T1 -> T4 -> T3 -> T2 。

生理期有點難受,做 T4 過程中睡了一覺。


T1

用 map 當桶,利用前三個數字判斷其他數出現的次數:

if(mp[a[1]]==mp[a[2]]) return mp[a[1]];
else if(mp[a[1]]==mp[a[3]]) return mp[a[1]];
else return mp[a[2]];

再跑一遍尋找不同的數字就 OK 了:

for(int i=1;i<=n;i++)
        if(mp[a[i]]!=tmp){
            printf("%lld",a[i]);
            return;
        }

期望得分 \(100\)

T2

觀察特殊性質:

對於另外 20% 的資料,\(type_i\) = 3。

直接敲了個 Dijkstra 板子。

期望得分 \(20\)

T3

直接拿陣列超級暴力:

if(op==1){
    int x,y,z;
    scanf("%lld%lld%lld",&x,&y,&z);
    for(int i=x;i<=y;i++){
        s[i].sum+=z;
        while(s[i].level<k&&s[i].sum>=a[i][s[i].level+1]) s[i].level++;
    }
}
else if(op==2){
    int x,y,res=0;
    scanf("%lld%lld",&x,&y);
    for(int i=x;i<=y;i++) res+=s[i].sum;
    printf("%lld\n",res);
}
else{
    int x,y,res=0;
    scanf("%lld%lld",&x,&y);
    for(int i=x;i<=y;i++) res+=s[i].level;
    printf("%lld\n",res);
}

想再拿點特殊性質的分的,但是實在是不太舒服就不想寫了。

期望得分 \(30\)

T4

首先可以看到大量的特殊性質:

對於另外 10% 的資料,\(𝑥 + 𝑦 = 0\)

對於另外 20% 的資料,\(𝑥 + 𝑦 = 1\)

對於另外 20% 的資料,\(𝑥 = 1, 𝑦 = 1\)

所以這裡直接進行一個分類討論:

scanf("%lld%lld%lld",&n,&x,&y);
for(int i=1;i<=n;i++){
    scanf("%lld",&f1[i][0]);
    f2[i][0]=f1[i][0];
}
if(x==0&&y==0) tbcsolve1();
else if(x==1&&y==0) tbcsolve2();
else if(x==0&&y==1) tbcsolve3();
else if(x==1&&y==1) tbcsolve4();
else tbcsolve5();
if(_<SHENSELF) tbcclear();

顯而易見,這裡 tbcsolve5 是對非特殊性質的處理,這裡利用 st 表處理【但是沒有過掉大樣例,懷疑 st 表出鍋

期望得分 \(50\)


交上題之後打了會兒賽博檯球就收拾收拾回家了。

EVENING

還是要享受一下假期的)跟麻麻吃著小龍蝦看上週的《音樂緣計劃》😋

不太舒服,11:30 早點睡了。

DAY 2

MORNING

這兩天身體狀態不好真的很煩😐起晚了……

趕到教室的時候已經講完題了。

剩下的時間在幹什麼不記得了……

中午繼續遇事不決華萊士,一邊吃一邊做了一篇天學網英語聽力,挺簡單的輕鬆滿分~

然後機房團建 generals 的時候剛好碰到 sheep32768 帶領他在北京集訓的朋友們來一起玩了。

AFTERNOON

做夢熊 NOIP 十三連測第九套,太難了不會了放棄了😭。

昨天做的那套 zhx P199 跑出測評:100+20+30+20=170。顯然 D 離期望掛了 30 分。

死因如下:

int qmi(int a,int b){
    int res=1;
    while(b){
        if(b&1) res=res*a%mod;
        a=a*a%mod;
        b<<=1;//就是這裡,日常搞不清左移右移
    }
    return res;
}

改成 b>>=1 之後就順利拿到了 50 分。

不知道幹什麼了,拿出來縮點題單又刷了幾道。

EVENING

臨回家時拍了張照:

我從電腦前站起身來,拉開窗簾,發現六點半的天竟已經黑了下來

今天的太陽屬實算不上溫暖,凍得我翻出了過年的衣服

可此時的太陽好像綻放了自己最後的光芒

此時的它,如同烈火,點燃了夜

回家之後學了點 whk(10.10 的月考感覺像一把刀架在我脖子上😰)

作業:地理國慶作業 1。

複習:化學離子反應,生物第二章。

背單詞。over。