原创 codeforces 338b Book of Evil

題意:樹上有一個點可以覆蓋距離離他d的所有點,告訴你已有多少點被覆蓋,問這個點可能有幾種情況 思路:從根開始搜索 構造一個數組記錄深度比他深的 且已被覆蓋  距離他最遠的節點的距離 然後再進入搜索對於每個節點  拿到父節點離他最遠的被覆

原创 hdu 6710 2019 CCPC 網絡賽 09題

題意:就是給你一個二分圖,左右兩邊兩點之間存在邊的概率是0.5,問兩點的期望距離是多少? 思路:組合數學和dp。   設dp[i][j][k][l] 第一個狀態是當前的步長 第二個狀態是左邊還有多少個點沒鏈接 第三個狀態是右邊還有多少個點

原创 codeforces 338e

題意:根據僞代碼 求出答案 思路:其實他要我們求的是一個符合他條件 a[] 的連續的子串有多少個 這個字串必須滿足一個條件 就是經過和b[]任意的匹配後 每一對數之和需要大於等於 一個特定的值  那麼 最優的方案就是貪心  子串最大的 和

原创 codeforces 620e

題意:給你一顆樹 (一開始染好色的) 給你兩種操作 一種是把當前節點和他的子樹染成同一種顏色 還有一種是查詢他和他的子樹 到底有多少種不同的顏色? 思路:假設 他是一根直線 那麼就是線段樹 區間操作染色 中間合併就是或操作即可 因爲他的

原创 codeforces 616E - Sum of Remainders

題意:計算 n mod 1+n mod 2 + ... n mod m  思路:其實計算 n mod x 可以轉換爲   n - [n/x]*x  n/x=i 是一個連續的範圍 比如 10/4 =2 10/5=2  我們只要計算出 n/

原创 codeforces 628e

好像是被我水過了    因爲題目給了5s 題意:問圖像中到底有多少個z型圖像。 思路:對於每一個點都有可能是最左下角的點,那麼把對於每一個 斜邊 看成大區間  區間每一個點都是都有兩個值 一個是能到右邊的最遠距離 一個是到左邊的最遠距

原创 codeforces 626f

這題不會寫 看了官方題解才知道 T T  感覺漲姿勢了  題意:將數據分成若干組 每組的價值爲最大值減去最小值  問不超過可k的方案數 有多少種? 思路:雖然我知道是一道dp題目,但是第二個狀態總是朦朦朧朧想不出來   首先對數據排序

原创 codeforces 617e

題意:m個區間詢問 問數組中 區間範圍爲 l,r  問在區間中 ai, ai + 1, ..., aj = k   的數量 思路:對於  ai^ai+1^ai+2....=(a1^a2^..ai-1)^ (a1^a2^..ai^ai+1

原创 codeforces 557d

題意:給你一幅圖 問給至少還要幾條邊 使得這個圖還存在奇環。 思路:如果是隻存在偶環 那麼表示爲二分圖 那麼圖的左邊的點之間有聯通 那麼只需要選擇左邊任意兩個點加上一條邊  就可以構成奇環 同理可以算出所有答案。 當然還有2種特殊情況 一

原创 codeforces 464c 465e

題意:給你一個數字 然後每次改變一種數 問你最後數字MOD 10e9+7 是多少? 思路:我們只要知道某種數最後變成怎麼樣就好。所以我是從最後一次變化往上推,每一次要變的那種數都是向下一次取得數據進行改造。 #include<std

原创 codeforces 624d 623b Array GCD

過年玩了20天  都不會寫了 題意:有兩種操作,每種只能用一次,第一種對於一段連續區間進行移除(不能全刪完),代價是長度*a,第二種是對於一些數進行+1或者-1,使得最後的剩餘的最大公約數大於1 思路:由於不能全刪完,所以至少會有一

原创 codeforces 581d

題意:問三個矩形能不能組成一個正方形 思路:其實就只有題目給的那2種情況,枚舉每個放的情況和順序就好了 #include<cstring> #include<cstdlib> #include<iostream> #include<s

原创 codeforces 616D Longest k-Good Segment

題意:求一個最長連續的不同元素數量不超過k的序列 思路:利用一個窗口滑動,左端點表示當前位置,右端點表示目前這段數列符合要求, 每增加一個長度,判斷是否合理,不然平移左端點。 #include<cstring> #include<cs

原创 codeforce 590d

思路:從最後一個數開始考慮,是否放入 k-數列 中,因爲後面的數不影響前面的數,並且總步數不超過n*n。#include <cstdio> #include <cstring> #include <iostream> #include <

原创 CodeForces - 1182D

題意:找到一個點作根,使同一深度的點有相同數目的邊。   思路:經過簡單的觀察,實際上這樣的樹有一個特徵:當某一個點作根符合題目要求時,每個相同深度的節點其子樹的節點數目是相同的,或者是每個相同深度的節點作根,其子樹結構相同。 那麼答案只