20200721比賽總結

2022-07-22 12:57:16 字數 2590 閱讀 7276

下面是對20200721比賽的總結與反思

這道題我直接切了

但是正解是\(o(n)\),我打的是\(o(nlogn)\)

看到題目中有最長時間可以猜測二分答案的思路。然後我們分析題目。

對於這種oi中的運動學題(手動滑稽),我們不需要想的太複雜,只需要模擬判斷

我們就根據上面的二分寫下來**:

const double eps=1e-12;

double l=1,r=maxn;

while(l+eps然後判斷的方法就是進行迴圈列舉經過時間後的位置,**如下

for(int i=1;i<=n;i++)

now[i]=loc[i]+v[i]*mid;

那我們怎麼判斷呢?

怎樣會碰撞?

那就是\(loc[i],但是\(now[i]>=now[j]\)

然後我們就可以去掉\(k\)個,然後怎麼才能不碰撞?

當然是最後留下的序列是單調上公升

所以就用\(o(nlogn)\)的lis來判斷

**如下:

#include #include #include using namespace std;

typedef pairpii;

const int maxn=5e4+5;

pii vp[maxn];

double b[maxn],d[maxn];

int n,k;

templateinline void read(t &x)

int check(double ti)

return nowans>=n-k;

}int main()

sort(vp+1,vp+n+1);

double l=0,r=2e6+5,mid;

while(r-l>1e-10)

if(l>2e6) puts("forever");

else printf("%.4lf\n",l);

return 0;

}

t3

不會做留坑代填

2015 8 15比賽總結

在總結之前,我必須膜拜一下某個切完提高組來省賽組虐場的犇。今天的比賽,失策還是有的,今天的問題如下 打 不小心,打錯了乙個小細節,導致最終答案錯誤。有的題目a了樣例我就以為可以了,或者是打的對拍也錯了 打題前沒有想清楚,最後對拍時才發現錯誤。第一題 這是道二分的題目,我在做比賽時就想到了正解,就是用...

8 17比賽總結

這次比賽考得一般般,這回的題是前段時間學的圖論演算法的測試題 100 52.2 40 12.5。1 位圖 這題是很簡單的圖論,用bfs 加優化簡單 o nm 過了。正解 這題將所有更新的點記錄在乙個佇列裡 初始的時候都是1 的看為更新的 然後每次將這些點往四周擴散,如果可以擴散,那麼 ans x,y...

8 18 比賽總結

這次比賽很不錯,排名第一 100 100 0 100 300。1 跳格仔 這題在比賽的時候做就很淼,直接dp 就可以了。正解 dp。2 2048 這題是一道純模擬題,只需要模擬2048 執行的步驟來進行迴圈和合併,由於 比較複雜,所以要精細做,考試的時候在除錯一小時後終於將這道題做了出來。正解 同上...