USACO月賽題解 第三講 排序

2021-06-20 09:06:42 字數 902 閱讀 5097

彙總見 

這一部分的題目也很經典

第10題 重排乾草 restack

這種題要麼0分要麼滿分,和《訓練指南》的第一章例3幾乎一樣,通過代數分析將題目轉化

最後變成求中位數的題目,o(n)還是o(nlogn)隨意~

//bzoj裡出現了兩道和這題幾乎一樣的題目

/*

錯了兩個點

修改資料型別

還是錯這兩個點

發現輸出的資料型別沒改..

ac*/

void setio(string name)

const int maxn=100010;

ll a[maxn],b[maxn],c[maxn];

int main()

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

ll ans=0,x0=c[(n+1)/2];

rep1(i,n)

ans+=abs(c[i]-x0);

cout<

第11題 奶牛集體照 photo

神題,**很短。

因為被教訓過之後就不能動了。假如a原來在b左邊,出來晃了一次,跑到了b右邊,那麼它下一次又會在b左邊,b往左晃也是同理。也就是a的初始位置在b左邊等價於a在5張**裡出現在b左邊的次數≥3.

mappos[5];

int a[20010], n;

void setio(string name)

int cmp(int a,int b)

return cnt>2;

}int main()

sort(a, a + n, cmp);

rep(i, n) printf("%d\n", a[i]);

//while(1);

return 0;

}

USACO月賽題解 第三十講 動態規劃 一

彙總見 這五個dp題還是很不錯的 第6題,方形牛棚 bigbrn 很經典的題目了,沒有看題解,自己想了個解法 首先m較小的話可以參考另一篇部落格,把點看成邊界來做 這道題dp比較好一些 d i j min d i 1 j 1 1,min lft i j up i j lft和up分別表示左方和上方的...

USACO月賽題解 第四講 貪心

彙總見 這一部分的題目也很經典,雖然是一次排序解決問題,但有難度 第15題 奶牛雜技 acrobat 這種題基本上要按某種關鍵字排序,所以考慮相鄰兩頭牛,他們上面的牛重量加起來是w0,若a在b上面,a受到壓力為w0 sa b受到壓力為 w0 wa sb.再寫出反過來的情況,進行一下分析即可,最後是按...

USACO月賽題解 第四講 數值計算

彙總見 感覺這部分usaco的題型和oi題還是不大一樣的,做下來意思不大 第3題,醜數 humble 這題還是很經典的,training裡也有。有兩個樸素想法,乙個是造一堆數然後排序,另乙個是已知前k個數推出第k 1個數的方法,第k 1個數由前k個數中的乙個乘上乙個素數得到,這麼做是平方級的,已經接...