原创 數組實現鄰接表的原理和細節

數組實現鄰接表的原理 細節學的不太到位,幾個月沒寫就立刻忘記了,系統的整理一下 首先簡單說一下自己對鄰接表的理解:鄰接表其實就是所有頂點的鏈表 例如下圖所示: 以111爲起點的邊:111->222 以222爲起點的邊:222->5

原创 樹狀數組應用總結

前言 做個總結,忘記之後再翻翻 首先明確一下樹狀數組的結構性質: 1.每個內部節點c[x]c[x]c[x]保存以它爲根的子樹中所有葉節點的和 2.每個內部節點c[x]c[x]c[x]的子節點個數等於lowbit(x)lowbit(

原创 CodeForces - 1368

CodeForces - 1368 A - C+= 直接模擬 ll t,a,b,n; int main() { scanf("%lld",&t); while(t--) { int num

原创 CodeForces - 1367

CodeForces - 1367 A - Short Substrings 很顯然 前兩個字母都取 之後隔一個取一個 char s[maxn],ans[maxn]; int t; int main() { scanf(

原创 CodeForces - 1373

CodeForces - 1373 A - Donut Shops 買1個的時候,店2最虧,店1最有可能比店2便宜 買b個的時候,店2最賺,店2最有可能比店1便宜 比較這兩種情況即可 ll a,b,c; int ans1,ans

原创 樓蘭圖騰 Page205 樹狀數組求逆序對

樓蘭圖騰 Page205 樹狀數組求逆序對 1.樹狀數組寫起來感覺比歸併好理解多了 2.求^和v的形狀,求出任意一個後,可以採用將數組“倒過來”的方法,即將數組的大小關係重置一下 3.不僅是逆序對,正序對也很好求,改變遍歷方向即可