Cut the Sequence,Sequence Partitioning,POJ3017,POJ3245,用單調隊列最佳化的DP

為什麼這兩題要放到一起說呢,主要是這兩題十分類似,用單調隊列最佳化的方法是一樣的,所以放在一起總結會比較印象深刻。先說POJ3017----------Cut the Sequence題目地址:http://poj.org/problem?id=3017題目意思:給你N個數和一個值M可以將這N個數分成任意段,使得每段的和不大於M要你使得每段的最大值加起來的和最小,求這個最小值解題思路:首先咱們提出一個狀態轉移方程:f[i] = f[b[i]-1] + max(a[k])    

poj 3245 Sequence Partitioning(dp+二分+單調隊列+sbt)

Sequence PartitioningTime Limit: 8000MS Memory Limit: 65536KTotal Submissions: 710 Accepted: 207Case Time Limit: 5000MSDescriptionGiven a sequence of N ordered pairs of positive integers (Ai, Bi), you have to partition it into several contiguous

POJ3368 Frequent values ST演算法

給你一個由n個數字組成的非降序序列(這是重要條件)。有m次詢問,每次詢問區間【L,R】之間出現最多的數字出現的次數。該題只涉及查詢不涉及修改選用RMQ中的ST演算法我們用數組counts,按順序統計一個數字連續·出現的次數,這個數子儲存在value中(本題其實不需要儲存,如果詢問是哪個數則需要)然後用一個結構統計一個下標所在的區間的左右範圍,以及當前下標的數字在counts中屬於哪個位置。然後對counts進行RMQ初始化,查詢區間最大值,對於l,r的詢問我們ans=max(從l到l所在段的結束

poj 3017 Cut the Sequence(DP+單調隊列+set)

Cut the SequenceTime Limit: 2000MS Memory Limit: 131072KTotal Submissions: 7210 Accepted: 2025DescriptionGiven an integer sequence { an } of length N, you are to cut the sequence into several parts every one of which is a consecutive subsequence of

HDU2894 DeBruijin 歐拉迴路

歐拉迴路,轉動鼓輪的應用。DeBruijinTime Limit: 4000/2000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 307    Accepted Submission(s): 195Problem

POJ1069 The Bermuda Triangle DFS

這個座標系建的真牛。。。。。。比賽碰到這種題目,必跪。。。。。。見座標是給每一個單位三角分配,不是一個點分配。有兩種建立方法,我用了夾角120方法。。。。。都一樣的。。。The Bermuda TriangleTime Limit: 2000MS Memory Limit: 32768KTotal Submissions: 1096 Accepted: 509DescriptionPeople in the hidden region of the Bermuda Triangle make

Hackers’ Crackdown—–UVA11825—–DP+狀態壓縮

題目地址:http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=2925題目意思:有N台機器,每台機器上有N個服務你可以對每台機器選擇關閉他以及和他相鄰的機器的一種服務當所有機器不能運行一個服務時,就是摧毀了一種服務問你最多能摧毀多少個服務解題思路:這道題是大白上DP的一道例題,十分經典對於每一個機器機器相鄰的機器我們叫做Pi那麼我們就是

HDU4217 Data Structure? 線段樹

記得是上學期的一場比賽的題目。線段樹的單點更新,查詢的同時更新節點即可。注意資料範圍使用 long longData Structure?Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total Submission(s): 1721 Accepted Submission(s): 538Problem DescriptionData structure is one of

NYOJ298 點的變換 矩陣乘法

關於矩陣乘法的知識matrix67大牛的部落格http://www.matrix67.com/blog/archives/276/已經講得非常好了額,裡面一共總結十個能利用矩陣乘法的解決的題目類型。這道題目是第一中類型的一個模板題。之前連續做到多到矩陣乘法的題目,於是這幾天開始學習矩陣乘法。矩陣的乘法真的是很神奇的東西。  點的變換時間限制:2000 ms  |            記憶體限制:65535 KB難度:5描述

POJ1985 Cow Marathon 樹的直徑

求一棵樹的直徑。方法:隨便選一個點當做root,開始DFS找到最遠的一個點,這個點一定是樹直徑中的一個端點(嚴格樹,不存在環)然後再把剛才找到的點作為ROOT 第二遍DFS,這次找到的最遠的距離,就是樹的直徑。 Cow MarathonTime Limit: 2000MS Memory Limit: 30000KTotal Submissions: 2963 Accepted: 1484Case Time Limit: 1000MSDescriptionAfter hearing about

RSA Factorization—-POJ3892—-數學題+大數

題目地址:http://poj.org/problem?id=3892給你一個數N和一個K其中N可以被兩個素數P,Q分解加了一個條件: |q - kp| <= 105要你求出p和q解題思路:題目中,q<=p且 |q - kp| <=

vijos p1243 產品生產 單調隊列+DP

想要強化自己的DP能力,於是找了幾篇單調隊列的論文,開始看論文做題目,但是結果第一題就悲劇了,做了好久,今天終於A掉了。狀態轉移方程f[i,j]=min(f[k][p]-sum[i][p]+k)+sum[i][j]     (k!=i)   f[i,j]表示完成前j個流程期中最後一個流程在i上完成的最小耗費                                                                           sum[i][j] 

HDU3244—-二分法加完全背包

題目地址:http://acm.hdu.edu.cn/showproblem.php?pid=3244題目意思:lz要請客,要準備n種原料,每種原料有6個參數:x,y,s1,p1,s2,p2。表示的含義分別是:對於第i種原料,每個人的需求量是x,現在還剩下y的量,每種原料有2種封裝,一種小包的,一種打包的,每一小包的量是s1,價格是p1,打包的量是s2,價格是p2。現在給你n種原料和m的錢,求最多能請幾個人。解題思路:二分法枚舉人數,然後再根據人數判斷能不能滿足那麼確定人數之後,就要根據人數求出

Candy—-HDU4465—-數學題

題目地址:http://acm.hdu.edu.cn/showproblem.php?pid=4465題目意思:有兩個箱子,每個箱子裝有N個糖果開啟第一個箱子的機率是P,另外一個就是1-P當小明開啟一個箱子的時候發現有糖果就會吃掉有一天,小明開啟其中的一個箱子,發現沒有糖果了,求另外一個箱子的糖果數量的期望這個公式其實是很好推的,枚舉另外一個箱子剩餘的數量來算就OK這裡的n經過了+1處理,這樣我們枚舉沒有拿空的那個箱子裡面拿了i個,那麼剩下的就是n-i-1個算機率的話,就是在前面的n+i-i次中

SPOJ694—-尾碼數組

題目地址:http://www.spoj.com/problems/DISUBSTR/題目意思:給你一個字串,要你去除他的不同的子串的數量解題思路:每個子串一定是某個尾碼的首碼,那麼原問題等價於求所有尾碼之間的不相同的首碼的個數。如果所有的尾碼按照suffix(sa[1]), suffix(sa[2]),suffix(sa[3]), …… ,suffix(sa[n])的順序計算,不難發現,對於每一次新加進來的尾碼suffix(sa[k]),它將產生n-sa[k]+1

LA3027 Corporative Network 並查集(維護節點到root的距離)

Corporative NetworkTime Limit: 3000MS Memory Limit: Unknown 64bit IO Format: %lld & %llu[Submit]   [Go Back]   [Status]  DescriptionA very big corporation is developing its corporative network. In the beginning each of the N enterprises of the

hdu1557 權利指數(狀態壓縮)

開始看到這題寫的是dfs 後來又看到母函數 然後看到覺得狀態壓縮應該也可以總的來說 這題真的很簡單。。想想都可以直接暴力的。。就是把狀態用二進位表示而已 結果沒想到 不用全部狀態存下來 再減一個比一個 直接跟sumw/2 比較就知道相對大小了 哎。。。#include<iostream>#include<cstdio>#include<cstring>using namespace std;int sumw,n;int w[25],ans[25];int

hdu3001 Traveling (三進位狀態壓縮dp)

【題目大意】10個點的TSP問題,但是要求每個點最多走兩邊,不是只可以走一次,所以要用三進位的狀態壓縮解決這個問題。可以預先處理每個狀態的第k位是什麼。【解析】和tsp問題相同,類似於上面那個題【狀態轉移方程】dp[j][i]=min(dp[j][i],dp[k][l]+map[k][j]);   j表示終點 i為二進位表示狀態 1表示經過 0表示不經過 把所有可能的路徑排列出來 找最小值  l表示i的第j位從1變成0之後的三進位數  k表示中轉點 先從去掉一個經過點的位置到k 再從k到j

poj 2923 Relocation(狀態壓縮dp+背包)

RelocationTime Limit: 1000MS Memory Limit: 65536KTotal Submissions: 1479 Accepted: 597DescriptionEmma and Eric are moving to their new house they bought after returning from their honeymoon. Fortunately, they have a few friends helping them relocate.

POJ3902 The Bad Number

題意思路這裡都寫的很清楚→ →http://hi.baidu.com/chenwenwen0210/item/b4f142d53129fdc954347f11我覺得這題真是太厲害了 作為一個程式員 嚴謹 認真 記憶力好 實在是太重要了 比起演算法 不粗心大意顯然更重要啊!而這一題極大的考驗了我們的耐心

總頁數: 61357 1 .... 19637 19638 19639 19640 19641 .... 61357 Go to: 前往

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.