hdu 5407 (crb and candies) (結論) 有公式:(n+1)*lcm(c(n,0),c(n,1)..c(n,n)) = lcm(1,2,3..n)(據說oeis能查到),然後有:
然後除(n+1)取模要求逆元。題解參考這裡。
hdu 5409 crb and graph(圖論-橋)題意:乙個聯通的無向圖, 對於每一條邊, 若刪除該邊後存在兩點不可達,則輸出這兩個點, 如果存在多個則輸出第乙個點盡可能大,第二個點盡可能小的。 不存在輸出0 0。看過圖論的話還是比較簡單的。。。刪除邊之後存在兩點不可到達稱這條邊為橋。本題就用tarjan演算法求出所有的邊雙連通分量,然後縮點重新建圖就變成了一棵樹,點權設定成每個聯通分量最大的即可。然後點標號還是原來橋兩邊的標號,而樹上的每一條邊都是乙個橋, 考慮每條邊的輸出,刪除某一邊後肯定會出現兩個聯通分量, 需要記錄兩個聯通分量中最大的點max1 max2, 如果max1!=n 則答案就是max1 max1+1否則max2 max2+1。因此只需要從n節點開始dfs一遍求出以每個節點為根的子樹的最大點權值就可以了。題解參考這裡。
hdu 5410 crb and his birthday(完全揹包) 題意:crb生日,媽媽要給他買禮物,媽媽有m元錢,這家店有n種禮物,因為店長和媽媽是熟人,所以若第i種禮物買x件的話,店長會給媽媽ai*x+bi顆糖果,現給出每種禮物的單價、ai值與bi值,問媽媽最多能拿到多少顆糖果。顯然是完全揹包的問題。主要在於買一件和不買的區別是a[i]+b[i],而買一件和買多件的差別是a[i]。題解參考這裡。
hdu 5411 crb and puzzle(矩陣快速冪)題意:給定n個點 常數m,下面n行第i行第乙個數字表示i點的出邊數,後面給出這些出邊。問:圖里存在多少條路徑使得路徑長度<=m,路徑上的點可以重複。我記得離散課上講過這個。。。就是a+a^1+a^2+...+am-1的總共的1的數量?。。。矩陣快速冪解決。。。題解參考這裡。
hdu 5412 crb and queries(整體二分)題意:帶修改(單點更新)的求區間第k大值。題解參考這裡。
2023年8月8日訓練日記
hdu 5385 the path 貪心 題意 一張圖有n個頂點,給出一些有向邊,問該如何給這些邊賦值才能滿足 存在x,d 1 d 2 d x d x 1 d n 的條件且1為起點,d x 表示1到x的最短距離。賦值的範圍在1 n。特殊的,d 1 d 2 hdu 5386 cover 暴力 給你兩個...
2023年8月3日訓練日記
今天的主要任務是補多校題和看2015年杭電多校的第六套題。第一次見用樹狀陣列維護乘積。不過需要初始化全為1。然後看了上一場杭電的j題 簽到題 說是dfs剪枝。結果我剪了半天愣是tle。然後看題解,題解各式各樣,而且看不懂。就是列舉每乙個小4 4方格轉的次數,滿足條件再繼續搜。寫了200 行愣是t了,...
2023年8月5日訓練日記
hdu 5364 distribution money 思維 只需要統計是否有乙個數出現超過n 2次。hdu 5365 run 思維 結論 整點不能構成正 三 五 六邊形。然後四邊形只需要列舉平行於x,y軸的情況,和對於定點 i,j k,r 1,則 i,j k i r,j i r k,j r i k...