training 叉姐的魔法訓練

2021-06-28 19:04:46 字數 1475 閱讀 2398

這個系列貌似是掛在voj上的,傳送

好了, 下面開始魔法訓練 @_@..

poj 2443 set operation

題意:…

思路:

這個列舉就過了。。需要用到位壓縮。

poj 3244 difference between triplets(數學推導)

題意:

給n個(x, y, z)元組

define: d(i, j) = max(xi-xj, yi-yj, zi-zj) - min(xi-xj, yi-yj, zi-zj)

思路:

很好的數學題!

轉換: 把a,b,c看成數軸上的點,

則 max(a, b, c)-min(a, b, c) = ( |a-b|+|a-c|+|b-c| )/2

= (| (xi-yi)-(xj-yj) | + | (xi-zi)-(xj-zj) | + | (yi-zi)-(yj-zj) |)/2

= ( |n-m| + |n-l| + |m-l|)/2 (1)

(1)的式子可以排序後o(n)時間解決。

while (scanf("%d", &n) != eof && n) 

sort(a, a+n);sort(b, b+n);sort(c, c+n);

ll ans = 0;

rep (i, 0, n-1)

printf("%i64d\n", ans/2);

}

poj 3685 matrix(二分巢狀)

題意:

給出乙個由矩陣,aij是下標的函式…

求矩陣中第k大

思路:

行不滿足單調性,但是每列是遞增的。

注意重複的元素!

1)第一重二分

二分答案 範圍[-inf, inf]

求出小於x的數小於等於k-1的上界。這就是答案。

2)第二重二分

列舉每一列,求小於x的數的個數

const ll c = 100000;

const ll mxx = 1ll<<50;

ll n, k;

inline ll calc(ll i, ll j)

int go(ll key) while (l1);

tmp = calc(l, j);

if (tmp >= key) continue;

cnt += r-1;

if (cnt > k-1) return

1; }

// debug

//cout << cnt << " elements less than "

<< key << endl;

if (cnt <= k-1) return -1;

return1;}

ll solve()

return l;

}

叉姐專場小記 scu 4290 4299

4290 xor 題意 給定a集合和b集合,集合中的個數都是奇數個,詢問是否存在x使得a集合中的每個數字異或後 使得和b集合相同。剛開始沒看懂是集合,坑了很久。剛開始不會做,被點播了,因為異或,所以a1 x a2 x b1 b2 0 又因為x奇數個,所以可以直接計算出x的數字,當然這個是計算出來的,...

矩陣 叉姐出的兩道Determinant

首先要做這兩道題,需要掌握的基礎知識有 余子式mi j 代數余子式ai j 伴隨矩陣 逆矩陣a 1 a a 1 逆矩陣存在條件 滿秩 行秩等於列秩 湘潭a題意 給乙個 n 1 n 的矩陣 對於每一列,求去掉這一列的餘下的 n 1 階行列式的determinant n的取值範圍為200 賽上思路 暴力...

dp的sst模式下training流程

本文講述dp在實際操作中的training流程 dp的版本 1.4 dp的模式 sst模式。這裡我就用我自己的理解說下,說的不對的請見諒。一 為啥要training?二 傳送training前的準備 1 要確定我們的aux通道是完好的。2 確定我們的高速通道是好,因為training流程也會用到高速...