考試反思 1001csp s模擬測試 b 逃離

2022-02-18 15:02:52 字數 1604 閱讀 4546

如你所見,b組題,除了nc亂入直奔t2搶了我乙個首殺以外a層學過fft的人都沒有參加。

競爭壓力很小,題又簡單,所以就造就了6個ak。

然而並不計入總分,我仍然穩在第二機房。

t1lyl16分鐘切掉我也是佩服,我沒看資料範圍打錯複雜度(多了個二分)23分鐘碼完,t30。

思路都不是很毒瘤,**也很好打,加起來都沒有2k。

47分鐘時乾掉t3後我覺得差不多ak了,去廁所聽到隔壁聽講fft的聲音,有些難過。

回來之後開啟題庫翻看fft的題目看了半個小時左右。

然後自覺無聊,重新算了一下t1複雜度發現會被卡,改了。

過了一會,教練叫我去隔壁聽了一會講。。。

因為t1的失手導致了少聽了33分鐘的課。。。吸取教訓

一定要認真算好複雜度再開始打。

t1:x國的軍隊

考慮貪心並逆推。把b陣列都減去a陣列的量表示戰後至少剩下多少人。

考慮每個任務放進優先佇列裡,只要戰後剩餘人數足夠就繼續,否則就補人。

1 #include2 #include3

using

namespace

std;

4 priority_queueint,int>,vectorint,int> >,greaterint,int> > >q;

5int a[100005],b[100005];6

intread()

12int

main()

22 printf("

%lld\n

",ex+tot);23}

24 }

view code

t2:排列組合

考慮式子的實際含義,把每一項的第二個組合數改寫一下就是$\sum\limits_^c_n^i c_n^$

那麼就是在2n個物品裡選n個的全部可能。

陣列開2倍。肯定有人出鍋了。

1 #include2

#define int long long

3#define mod 1000000007

4int fac[2000005],invv[2000005],inv[2000005];5

main()

view code

t3:回文

發現串長很小,準備亂搞。

可以s2處理所有回文串。暴力即可。記錄每乙個回文串的兩端點。

每次詢問就是求有多少個回文串左端點比l大右端點比r小。

普通的二維偏序,值域只有5000*5000,樹狀陣列解決。

1 #include2

int l,t[5005][5005];char s[5005];3

void add(int x,int y)

4int ask(int x,int y,int a=0)

5int

main()

view code

考試反思 1114csp s模擬測試115 零遲

最後一次了,允許自己混進榜裡吧。沒有心態,原題不會做 真的忘了 t2的搜尋沒有分。零 遲 酷刑 只有在最後的時刻才開始意識到,一切的一切都已經晚了。就在眼前了。沒有機會了。退役,告別oi,粉碎夢想,這,就是最嚴苛的酷刑。生存,生存!hzoi2018!所有人!一年走來,我們還要繼續走下去!csp s,...

考試反思 1112csp s模擬測試111 二重

還是ak場。考前信心賽?而且t3的部分分還放反了所有80的都其實只有50。總算在ak場真正ak了一次。手感好,整場考試很順利。要不是因為t3是原題可能就沒這麼好看了。20mint1,50mint2,去趟廁所回來70min想到t3,110min寫完調完對拍完,然後去學skyh寫平衡樹了。然後我發現我不...

考試反思 1110csp s模擬測試108 消遣

是套廢題。t1題面錯了,t2細節多而暴力 部分分,t3題目錯了。t1 打表 題面應該是輸出差值期望而不是答案值期望。看到題目,果斷打表。答案就是所有值差之和除2的k次方。1 include2 int k,a 333333 long long ans 3int main view code t2 蛇 ...