原创 刷題——Wooden Sticks POJ - 1065

/* 這道題求得就是不下降序列的最少種類 先將一個值按從小到排序,相同的時候另一個值也按從小到大的順序排列 然後遍歷一遍,用一個數組放置每種不下降序

原创 刷題——Cow Exhibition POJ - 2184

/* 變種01揹包,將一種價值轉化成數組下標,變成改下標下另一種物品價值的最大值 */ #include <stdio.h> int dp[2000

原创 刷題——Wireless Network POJ - 2236

/* 有n臺電腦,電腦之間的最大通訊距離是d,電腦可以通過其它電腦通訊 現在每一臺電腦都是壞的,給定每臺電腦的位置 現在有兩種操作 O p修復p電腦

原创 刷題——Sunscreen POJ - 3614

/* 有c頭牛,每頭牛隻有SPF在某個區間內的防曬霜有效 防曬霜有L瓶,每瓶有防曬指數SPF和cow瓶 問最多能對幾頭牛塗防曬霜有用 很明顯的,對於

原创 刷題——hdu 6168 Numbers

/* 將ab數組放入map中記錄,將ab數組排序 ab[0],ab[1]一定是a1,a2(毫無疑問的) 接下去不知道是a1+a2,還是a3,在map

原创 刷題——Apple Catching POJ - 2385

/* dp[i][j]爲i時間,j次變換下所能得到的最大果實數 位置從1號樹開始,所以j爲偶數時在樹1處 若在i時刻,果實在所在樹上掉落 則dp[i

原创 刷題——Dollar Dayz POJ - 3181

/* n元錢在一個有1-k元的店裏買東西,每樣東西都是無限的,問有多少種購買方法 dp[i][j]表示i元錢買1-j東西的方法數,畫個圖很容易發現:

原创 筆記——最長上升子序列

int bSearch(int num,int k)//返回可更新的位置,如  1 3 4 ,2->1 2 4 將k長度的上升子序列的尾巴更新到最小

原创 刷題——Milking Time POJ - 3616

/* 一個擠奶的問題,擠奶的人有m個工作時間段,每個時間段有一定的產出 一個時間段必須工作完纔可以工作另一個時間段 工作了一個時間段後,必須要休息r

原创 刷題——Coins POJ - 1742

/* 有n種硬幣,每個硬幣面值爲ai,每個硬幣有ci種 問用這些硬幣支付m元以內的東西,可以支付幾種 樸素的方法是: dp[i][j]表示用前i種硬

原创 刷題——Cheapest Palindrome POJ - 3280

/* 給定一個串和改變串的代價(串可變長變短),問令給定串變成迴文串的最小代價 增加一個字符和減少一個字符各有代價,這時選取最少最小的作爲改變這個字

原创 刷題——Ant Counting POJ - 3046

/* 給四個數:T,A,S,B表示,有A個數,數從1-T,現求集合元素個數爲S-B的組合和,只用輸出6位 假設給定4個數1,2,3,4每個數只有1個

原创 刷題——Moo University - Financial Aid POJ - 2010

/* 奶牛學校招生,要招n個學生,有c個學生可招,有f元的招生經費 問招生的最大中位值成績是多少,若無法招n個學生輸出-1,n爲奇數 每個學生有成績

原创 刷題——Space Elevator POJ - 2392

/* 給定一些建築塊,問用這些建築塊能搭建多高的建築 每個建築塊有一定的高度h,和最高能搭建高度a,和塊數c 很明顯的這是一個揹包問題,揹包容量不超

原创 刷題——Find them, Catch them POJ - 1703

/* 有n個人這n個人來自與兩個幫派,現在有兩種操作 D a b,a b不屬於一個幫派 A a b,a b的關係,是同一個幫派,還是不同的,還是不確