原创 51nod.1956 費馬大定理擴展

51nod.1956 費馬大定理擴展 傳送門 看似題目嚇人,實則暴力水題,唯一學到的是費馬大定理。 #include<bits/stdc++.h> using namespace std; typedef long long l

原创 P1542 包裹快遞(二分)

P1542 包裹快遞(二分) 傳送門 思路:顯然答案具有單調性,考慮二分答案,判斷一下每次的時間,如果超過y[i]y[i]y[i]返回000,若小於x[i]x[i]x[i],則將時間置爲x[i]x[i]x[i]即可。注意數據卡精度

原创 P4047 [JSOI2010]部落劃分(Kruskal)

P4047 [JSOI2010]部落劃分(Kruskal) 傳送門 思路:最小生成樹,因爲每個部落的距離定義爲每個部落中距離最近的兩個點的距離,所以我們可以建立一個最小生成樹,一個點代表第一個部落,因爲我們要分成kkk個部落,所以

原创 P4447 [AHOI2018初中組]分組(貪心)

P4447 [AHOI2018初中組]分組(貪心) 傳送門 思路:貪心。將數組從小到大排好序後,用優先隊列維護每個組的當前最大實力值和人數,按照實力值爲第一關鍵字,人數爲第二關鍵字排序。 討論一下: 因爲我們是按實力值從小到大排序

原创 D. Odd-Even Subsequence(貪心+二分)

D. Odd-Even Subsequence(貪心+二分) 傳送門 思路:貪心+二分。 因爲答案具有單調性,考慮二分,因爲只需要取奇區間和偶區間的最小值,所以我們看可以分別計算答案的奇區間的情況和偶區間的情況,貪心的選取一個滿足

原创 牛牛愛學習(貪心&二分)

牛牛愛學習(貪心&二分) 傳送門 思路:二分的練手好題,顯然枚舉的天數是有單調性的,然後就是貪心的計算天數爲xxx的最大貢獻,顯然是從大到小取即可,每xxx個爲一類,一開始減0,再減1知道某一個物品貢獻小於等於0. #includ

原创 牛牛種花(樹狀數組)

牛牛種花(樹狀數組) 傳送門 思路:將座標按xxx爲第一關鍵字,yyy爲第二關鍵字從小到大排序,從小到達遍歷。然後用樹狀數組維護yyy的前綴和。離散化處理一下下標即可。 #include<bits/stdc++.h> using

原创 失憶藥水(二分圖結論)

失憶藥水(二分圖結論) 傳送門 挺好的一個圖論結論題, nnn階無向完全圖,求最少刪去多少邊得到二分圖。 也就是最多有多少邊能組成二分圖。 顯然兩邊取一半頂點是最優的情況。 nnn是偶數是取兩個n2\dfrac{n}{2}2n​,

原创 簽到題(組合數學)

簽到題(組合數學) 傳送門 看錯題意,以爲是nnn位數。應該是長度爲nnn的數組.恰好n−1n-1n−1個不同的數的方案數. 所以肯定有兩個數相同。 首先選出這兩個數的位置Cn2C_n^2Cn2​,再選出這個數是幾Cn1=nC_n

原创 呼蘭河傳(數學&lcm)

呼蘭河傳(數學&lcm) 傳送門 求nnn個數的最小公倍數lcmlcmlcm。 進行質因數分解,每個質因數去最大指數相乘即可。 時間複雜度:O(nlogn)O(nlogn)O(nlogn) #include<bits/stdc++

原创 惡魔果實 DFS

惡魔果實 DFS 傳送門 DFSDFSDFS水題,之前一直MLEMLEMLE,原來是有迴路,FQ 去重邊直接用setsetset就好了,遍歷的時候注意結點是否在當前集合即可。 #include<iostream> #include

原创 牛牛走迷宮(BFS)

牛牛走迷宮(BFS) 思路:BFSBFSBFS水題,按LDRULDRULDRU的順序走就可以保證是最小字典序了。然後遞歸打印路徑即可。 #include<bits/stdc++.h> using namespace std; ty

原创 556. 下一個更大元素 III(貪心)

556. 下一個更大元素 III(貪心) 傳送門 思路:維護一個非遞增序列,從右往左查找如果該數是一個非遞增數列,表示它已經是最大值,否則必有解,但要判斷是否是INTINTINT型。 從左往右找到最後一次出現可以交換的數位,因爲它

原创 LC.42.接雨水

LC.42.接雨水 傳送門 方法好多,學習到了。 1.對每個柱子向左向右暴力枚舉最大柱子,然後取較小的作爲貢獻。時間複雜度O(n2)O(n^2)O(n2),會TLETLETLE 2.由1可以想到,預處理一下向左,向右的最大值,即預

原创 Wallis公式(點火公式)

WallisWallisWallis公式(點火公式): In=∫0π2(sinnx)dx=∫0π2(cosnx)dx={(n−1)!!n!!×π2,n爲正偶數(n−1)!!n!!×1  ,n爲大於1的奇數I_n=\large\in