解題報告 luogu P6057

2022-04-30 01:39:10 字數 778 閱讀 2998

為武漢助威!

大佬:真·小學奧數

我:?怎麼算啊?

\(ps\):本來想切個綠題就滾去寫文化課,結果......憋了好長時間。

總算剛了出來,開始誤入列舉白邊的黑洞(這個字有鍋吧?!)出不來了。

主要思路:

\[ans=c_^3-\text=\dfrac-\text

\]那麼不同色的三元環數咋算呢,我們發現可以枚每個點,記錄其發出的不同色邊對數,最後累加會發現每個三元環都記錄了兩次,除一下即可,對於乙個點發出的黑白邊數讀入白邊時從黑邊裡減即可。

為什麼正確呢,我們發現不同色的三元環只有兩種情況:

白白黑,黑黑白。

這樣其三個頂點有兩個具有不同的邊對,即統計了兩次。

記得開\(long\;long\)。

這樣時間複雜度是\(o(n+m)\)的,可以通過本題。

#include#includeusing namespace std;

typedef long long ll;

const int maxn=100005;

int m,l,r;

ll n,sum=0,w[maxn],b[maxn],now=0;//black and white

int main()

sum=n*(n-1)*(n-2)/6;

for(int i=1;i<=n;i++) now+=b[i]*w[i];

printf("%lld\n",sum-now/2);

return 0;

}

解題報告 luogu P4378

神似 online judge 的 t2 如果考之前做了這題多好,然後就果斷抄了那個題的 你會發現很相似 注意 ans 1 因為最後還要檢查一遍,當然有跟簡單的做法,但是找逆序對最好了 並不好寫 include include include include includeusing namespa...

解題報告 luogu P2015

其實就是這題的雙倍經驗啦。動態轉移方程是 f i j max f i j f i i k 1 f i k e i w 這裡 f i j 代表從以 i 為根的子樹中合法留 j 個樹枝的最大剩餘值。include include includeconst int maxn 105 using names...

luogu P1006 傳紙條解題報告

題目傳送門 小淵和小軒是好朋友也是同班同學,他們在一起總有談不完的話題。一次素質拓展活動中,班上同學安排做成乙個m行n列的矩陣,而小淵和小軒被安排在矩陣對角線的兩端,因此,他們就無法直接交談了。幸運的是,他們可以通過傳紙條來進行交流。紙條要經由許多同學傳到對方手裡,小淵坐在矩陣的左上角,座標 1,1...