題解 P6075 JSOI2015 子集選取

2022-02-14 14:34:02 字數 655 閱讀 6547

csdn同步

原題鏈結

簡要題意:略。

資料範圍:\(1 \leq n,k \leq 10^9\).

考慮乙個事情。這玩意兒必定滿足,上面方陣的集合裡有的,下面沒有。左邊有的,右邊沒有;也可以都有。問題不大。

於是我們可以獨立地看待各個元素的情況。

對於 \(\forall \space [1,k] \space\) 的元素,很顯然,每個元素,在方陣內,選擇乙個 「左上方的聯通塊」 進行覆蓋,\(2^n\) 種是不難得到的。

於是就是 \(^k = 2^\),你直接快速冪就行。

時間複雜度:\(\mathcal(\log n \times \log k)\)

#includeusing namespace std;

typedef long long ll;

inline ll read()

ll x=0;while(ch>='0' && ch<='9') x=(x<<3)+(x<<1)+ch-'0',ch=getchar();return x*f;}

ll n,k;

const ll mod=1e9+7;

inline ll power(ll x,ll y) return ans;

}int main()

JSOI2015 染色問題 題解

傳送門 容斥原理 把三個容斥套一起 我們列舉至少有i ii行沒有染色,至少j jj列沒有染色,至少k kk種顏色沒有用到,那麼剩下 n i m j n i m j n i m j 個格仔每個都有c 1 k c 1 k c 1 k種選擇 可以在剩下c k c kc k種顏色中挑一種,也可以不染色 因此...

題解 JSOI2015染色問題

好像這個容斥還是明顯的。一共有三個要求,可以用組合數先滿足乙個,再用容斥解決剩下的兩個維。反正這題資料範圍這麼小,隨便亂搞都可以 用 a k i 表示使用 k 種顏色,至少有 i 列沒有染色的方案數,可以容斥預處理得到使用 k 種顏色染色使得每行每列均被染色的方案數。然後再容斥一下保證每種顏色都用上...

題解 JSOI2015 圈地

發現一種地要麼歸 a 要麼歸 b 若相鄰兩塊歸屬不同還有額外代價 那麼 a 買就連源點,b 買就連匯點 總收益加上這些值 中間連代價的雙向邊 答案為總收益減去最小割 include include include include include include const int n 160005 ...