原创 HDU 5521 Meeting 【拆點+最短路】

題目鏈接 題意 給m個由圖中結點組成的點集,點集中的點兩兩連通且距離爲相等的ti。現有兩人分別從1和N點處同時出發嗎,問能否相遇以及相遇的最短時間。 分析 很容易想到直接分別以點1和點N爲起始點求最短路,再遍歷各個點即可求得最短相

原创 POJ 2566 Bound Found 【Two Pointers】

題目鏈接 題意 給一串數列,再給一個目標值(非負),求這個數列中最接近目標值的區間和的絕對值 分析 原數列中的數有正有負,用Two Pointers不能保證向左向右移動一定會使區間和變大或變小,而排序又會打亂數列的順序。同樣,如果

原创 Codevs 1288 埃及分數 【IDA*】

題目鏈接 題意 非常出名而基礎的一道題,也是lrj紫書上講解IDA*的例題。 今天發現了Codevs這個OJ的存在,給人耳目一新的感覺,然後就A了這個題。然而居然做的第一題的測試數據就有問題(有爭議)…… 分析 首先看這個搜索的

原创 UVA 1616 Caravan Robbers 【二分+貪心+枚舉分母】

題目鏈接 題意 給n個互不相包含的區間,求出一個長度的最大值,使得可以在每個區間中選出這樣一個長度的子區間,這些子區間互不相交。結果用分數表示 分析 先考慮如果給定了區間長度能不能選出這樣的區間。因爲題中說了區間互不包含,所以可以

原创 UVA 1614 Hell on the Markets 【貪心+結論題】

題目鏈接 題意 給一串序列,保證序列中每個數滿足ai≤i ,問能否給這些數每個數前面填上正負號,使得其和爲0. 分析 先上結論 數列an 滿足 ∀ai∈an,ai≤i ,則對於任何正整數S≤sum[i] (sum[i]爲前

原创 2015-2016 ACM-ICPC, NEERC, Northern Subregional Contest Problem J 【二分+DP+單調隊列】

題目鏈接 題意 有n個地鐵站,全部成線性排列,有n-1種地鐵票,第i種地鐵票的價格爲p_i,並且能坐i站(也就是在第k個站能夠到達[k-i,k+i]中的站)。現在想從起點站坐到終點站,地鐵在相鄰兩個站之間運行花費1s(這裏原文是“

原创 LightOJ 1021 Painful Bases 【狀壓DP+數位DP】

題目鏈接 題意 求由一些B進制的數的全排列中能被K整除的數的個數 分析 題中B最高達到16,直接枚舉排列顯然不可能。考慮數位DP,但同時取得每個數要不同,所以需要記錄用過哪些數,因此要用到狀壓DP 狀態 dp[S][r]↔用了數集

原创 UVA 11212 Editing a Book 【IDA*】

題目鏈接 題意 給一個n個數的全排列,可以進行將任意連續的一段截下來插入到任意位置的操作,問至少需要多少步這樣的操作能夠是序列變成遞增的序列。 分析 題中n的最大值爲9,狀態數爲9的階乘,不過1e6左右,看似可以直接BFS。但是每

原创 LightOJ 1013 Love Calculator 【DP(LCS變形)】

題目鏈接 題意 給兩個字符串,求長度最短的字符串的長度以及個數,使得給出的兩個串都是這個串的子串。 分析 LCS的變形,首先長度自然是len(s1)+len(s2)-len(LCS)。關鍵是有多少個這樣的字符串。現在知道有兩種DP

原创 Aizu 0513 Paint Color【離散化+BFS】

題目鏈接 (日語題……(:зゝ∠)) 題意 在直角座標系的第一象限中有一塊m*h的板子,在上面貼上了一些矩形的膠帶,現在告訴每個膠帶的左下座標和右上座標,求板子上有多少個不連通的空白區域(沒有貼膠帶) 分析 座標範圍太大,1e6左

原创 POJ 3679 Median 【二分】

題目鏈接 題意 給N(N小於等於1e6)個數,求出由它們每個數的差組成的數列的中位數(若有偶數個,取左邊的一個) 分析 1e6的數據量,直接算是O(n2) 的數據量,肯定T。考慮用二分來枚舉中位數。然後二分中的判斷有不同的方法:

原创 POJ 3666 Making the Grade 【DP+離散化】

題目鏈接 題意 有N個平臺,它們的高度分別爲Ai。先想把這些平臺的高度變得非嚴格單調,改變一個平臺的高度的花費就是高度的改變量,問最小的花費是多少。 分析 定義狀態: dp[i][j]↔前i個平臺高度變成單調遞增並且第i個平臺高

原创 HDU 1058 Humble Numbers 【DP】

題目鏈接 題意 定義“Humble Numbers”是素因子只含有2,3,5,7的數,求第n個Humble Number是多少。 分析 顯然直接求出某個範圍以內所有的humble Numbers,關鍵是如何枚舉才能保證枚舉出來的數

原创 POJ 1065 Wooden Sticks 【貪心】

題目鏈接 題意 給n個整數對,定義數對間的大於關係是(w1,l1)≤(w2,l2)↔w1≤w2andl1≤l2 ,求用這些數對最少能組成幾組非遞減序列 分析 LIS的變形,但考慮到原來給的這些數對並沒有順序,可以隨便選擇,因此沒有

原创 LightOJ 1017 Brush (III) 【DP】

題目鏈接 題意 牆上有N個污點,知道它們的座標(xi,yi)。現有一把寬度爲w的刷子,將刷子固定在一個高度就可以沿着平行於x軸的方向刷除污點。總操作次數最多爲k,求最多能夠刷除掉多少污漬 分析 我們以刷子底部的y座標來刻畫刷子的位