原创 CodeForces - 549H

一道浮點數二分答案的模板題 #include <cstdio> #include <iostream> #include <string> #include <cstring> #include <algorithm> #include

原创 最短路四種基礎算法模板題

poj2387  dijsktra模板題 #include <cstdio> #include <cstring> #include <string> #include <iostream> #include <algorithm> #i

原创 KMP&&manacher模板題

hdu1686 kmp模板 #include <cstdio> #include <cstring> #include <string> #include <iostream> #include <algorithm> using nam

原创 spfa && poj1860

原文:點擊打開鏈接 poj1860:點擊打開鏈接 判斷是否存在正環。 bellman #include <cstdio> #include <cstring> #include <string> #include <iostream>

原创 HDU 1237

原題:點擊打開鏈接 一個模擬題目,主要熟悉一下逆波蘭式。 #include <cstdio> #include <cstring> #include <string> #include <iostream> #include <stac

原创 cf#403 A B C

A (模擬) Andryusha要收n對襪子,他會一隻襪子一隻襪子的拿出來放在桌子上,只要一有成對的就收回衣櫃,求桌子上最多可以同時存在多少種襪子。 一道很簡單的模擬水題,標記一下襪子的數量即可。因爲粗心,所以習慣性的從1枚舉到n,但是是

原创 cf 681C

原題:點擊打開鏈接 有一個堆,給你一些操作,分別是往這個堆加數,移除最小值和查詢最小值,讓你按照這些操作做,並且要最少次操作,輸出這些操作記錄。 注意查詢最小值x時記得判斷當前堆的最小值是否爲x,若大於x則插入x,小於則要移除最小值。當堆

原创 lcs 模板

輸出多條路徑 #include <cstdio> #include <cstring> #include <string> #include <iostream> #include <algorithm> #include <stack

原创 數組鄰接表

原文鏈接:點擊打開鏈接 有向圖: #include <cstdio> #include <cstring> #include <string> #include <iostream> #include <algorithm> using

原创 cf 682C

原題:點擊打開鏈接 給你一棵樹,1爲該樹的根只要有任意一條到i的路徑是大於num[i],就要將該點和該點子樹刪掉。 從1開始搜索路徑,取一到任意點的最大路徑,若最大路徑大於num[i],則可以將該點與子樹刪除。當路徑爲負數時要清零。 #

原创 mst模板題

hdu1233  prim模板 #include <cstdio> #include <cstring> #include <iostream> #include <algorithm> #include <string> #includ

原创 Codeforecs 715A

一道構造題。 構造出ai%i=0和ai+1%i=0,所以爲i*(i+1); #include <cstdio> #include <iostream> #include <string> #include <cstring> #incl

原创 01揹包

滾動數組: dp[j]=max(dp[j],dp[j-w]+v); POJ 2184 將數組擴大100000,負數變爲正數來處理 #include <iostream> #include <cstring> #include <st

原创 完全揹包

與01揹包很相似,只是物品無限次,要正序枚舉。 UVA 674 整數劃分,用記憶化搜索的話會更快。   #include <bits/stdc++.h> using namespace std; typedef long long l

原创 Codeforces #409div2 C

http://codeforces.com/contest/801/problem/C 有一個充電器和n個手機,手機剩餘電量b[i],消耗電量速度a[i]每秒,p爲充電器每秒可以充的電量。 只要充電器充的電量+剩餘的電量>=消耗的電量就可