友好的生物(狀壓dp)

2022-05-06 23:54:08 字數 948 閱讀 6523

傳送門

戳還有集訓隊寫的的題解~

大概思路:

1.把c[j]乘入屬性中。乘完後求的即是:

2.對於前k-1個屬性和第k個屬性分別討論,即

3.列舉符號串行,最優的情況一定包含在之內 。

4.把生物按照第k個屬性的大小排序,保證了後面的數第k種屬性大於前面的,這樣減出來第k個屬性的差值一定是負值,滿足條件。

#include#define mod 1000000007

#define ll long long

#define n 100003

#define inf 2100000000

using

namespace

std;

intread()

while(s>='

0'&&s<='9')

return x*f;

}int c[10

],k;

struct

animalp[n];

bool cmp(const animal &x,const animal &y)

intmain()

sort(p+1,p+1+n,cmp);

int ans=0

,t1,t2,minid;

for(int i=(1

<=0;--i)//

列舉符號串行,最優的情況一定包含在之內

//更新ans時是用num-minn判,因為求的是兩個生物的屬性差

if(minn>num)//

minn儲存最小的屬性和

} }

printf("%d

",t1,t2,ans);

}

view code

狀壓dp 玉公尺田 狀壓dp

相關 強相關 327.玉公尺田 狀壓dp 小國王 狀壓dp 是井字形,本題是十字形。思路 狀態計算 時間複雜度 n 2 n 2n o n 22n 12 2 24n 2 n 2 n o n2 12 2 n 2n 2 n o n22n 12 224 看著妥妥超時,但是裡面合法狀態很少 依舊可以過 在此,...

友好的生物

問題描述 w 星球是乙個和地球一樣氣候適宜 物種聚集的星球。經過多年的研究,外星生物學 家們已經發現了數萬種生物,而且這個數字還在不斷增大。w 星球上的生物很有趣,有些生物之間很友好,朝夕相伴,形影不離 但有些卻很敵 對,一見面就難免發生戰鬥。為了能夠更好地了解它們之間的友好程度,外星生物學家希望 ...

狀壓dp小記

鋪磚 題意 現有nm的一塊地板,需要用12的磚塊去鋪滿,中間不能留有空隙。問這樣方案有多少種 include using namespace std typedef long long ll const int maxn 1 11 int n,m,state ll dp 15 maxn s1表示本行...