hdu4441 Queue Sequence(線段樹+splay)

題目請戳這裡題目大意:有對隊列的一系列操作,+i表示i入隊,-i表示i出隊,現在對這些操作進行操作。insert p表示在當前操作序列的第p號位置插入一個操作+i,其中i是當前操作序列中未出現的最小的正整數,p從0開始,i從1開始;同時將-i操作插入某個恰當的位置,保證這個位置盡量靠右,並且當從左往右掃描這個操作序列的時候,掃到-i的時候,當前隊首元素為i;remove i表示將操作序列中的+i操作和-i操作刪除;query i表示查詢+i操作和-i操作中間數的和;題目分析:資料結構不錯的題目。

Ural1736 Chinese Hockey 最大流

一場比賽在規定時間內比完 勝者3分敗者0分,加時賽比完勝者2分敗者1分然後聯賽是單迴圈賽(任何兩隻隊伍比一次),給出了上賽季每隻隊伍的積分,問你這個積分合不合理,如果合理則要輸出方案。首先我們發現一場比賽的積分固定,然後3分無論怎麼分配都能對應一種勝負情況,因此用最大流將每場比賽和每一隻隊伍分別抽象成點(比賽點: 1 -至2*n*(n-1)   隊伍點 2*n*(n-1)+1 至2*n*(n-1)+n )源點和每場比賽連

poj1679The Unique MST

題目請戳這裡題目大意:判斷最小產生樹是否唯一題目分析:求次小產生樹,判斷與最小產生樹權值是否相等。如何求次小產生樹:先將出現權值相同的邊標記,跑一次Kruscal,求出mst,並記錄選出來的邊,在選出來的邊中任選一條被相同權值標記過的邊,刪掉,再求mst,記錄最小值。trick:刪邊Kruscal的時候,注意判斷圖不連通,因為如果刪掉的是一條關鍵邊,導致圖不連通,求出的新產生樹會少一條邊,但是權值可能會和最小產生樹相同。詳情請見代碼:#include

ZOJ3334 Body Check 貪心

二分枚舉共同工作時間在判斷是否可行即可Body CheckTime Limit: 1 Second      Memory Limit: 32768 KB      Special JudgeDue to the spread of H1N1 all over the world, the king of Kingdom atouSK is so afraid that he decides to ask all his people to do a body check, no matter

POJ3538 Domestic Networks DP+MST

簡單DPDP之前先求一個最小產生樹狀態轉移f[i][j]  表示前i條邊用了j單位的5號材料所用的最小花費f[i][j]=min(f[i][j],f[i-1][j-len]+len*c5)f[i][j]=min(f[i][j],f[i-1][j]+len*c6)然後回溯輸出解就可以了記憶體有點吃緊要用滾動數組Domestic NetworksTime Limit: 2000MS Memory Limit: 65536KTotal

HDU1711—–Number Sequence—–裸的KMP

題目地址:http://acm.hdu.edu.cn/showproblem.php?pid=1711題目意思:找出b在a中的起始位置,沒有則是-1解題思路:裸的KMP,不多說不會KMP的話可以去看http://www.cppblog.com/oosky/archive/2006/07/06/9486.html說的非常好模板我是拿的大白的代碼:#include<cstdio>#include<cstring>using namespace std;const int

UVA10534—–Wavio Sequence—–動態規劃之LIS

題目地址:http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=1475題目意思:給你一個序列,告訴你Wavio序列的定義若一個Wavio序列的長度為2*n+1前n+1個是遞增的後n+1個是遞減的求出這個序列中的最長的Wavio序列的長度解題思路:對序列正著求LIS得出dp1[i]反著求LIS得出dp2[i]分別代表以i為終點的正著的LI

UVA10288 Coupons 期望+分數運算

公式E(x)=n Σ 1/i因為當已經拿到k張不同的時候 拿到不同牌的期望是 (n-k)/n    ,1除於這個機率就是  n/(n-k) 然後從1到n加一下就可以了 Problem FCouponsInput: standard inputOutput: standard outputTime Limit: 2 secondsMemory Limit: 32 MB Coupons in cereal boxes are numbered 1 to n, and a set of one of

HDU 4474 Yet Another Multiple Problem (bfs+mod運算)

       題目大意:給你一個數n,找一個最小的是n的倍數的數。但是會給定幾個數字不能選。    解題思路:BFS解決,把MOD全部儲存起來,不訪問已經訪問過MOD相同的。                       新的mod=(mod*10+i)%n不斷再後面加值。    題目地址: Yet Another Multiple Problem#include<iostream>#include<cstdio>#include<cstring>using

HDU4570—-Multi-bit Trie—-簡單的DP

題目地址:http://acm.hdu.edu.cn/showproblem.php?pid=4570題目意思:給你N個數要你分成多段,每段長度不能超過20是的sum(ai*(2^bi))最小,ai為每段第一個數,bi為長度解題思路:設dp[i] =

ZOJ3216 Compositions DP+矩陣乘法

CompositionsTime Limit: 5 Seconds      Memory Limit: 32768 KBWe consider problems concerning the number of ways in which a number can be written as a sum. If the order of the terms in the sum is taken into account the sum is called a composition and

01背包 套用思路HDU1709

/* 題目大意:給定幾個數字,作為砝碼,看哪些不能被稱出。 解題思路:先01背包求出可以相加的所有的情況,再暴力找出可以使用減法的情況。 變數i , j 放在外面會逾時。。。。感謝吉吉。*/#include<iostream>#include<cstdio>#include<cstring>#include<algorithm>using namespace std;int dp[11002];int

UVA11552——FEWEST FLOPS——區間型的DP

題目地址:http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=2547題目意思:給你一個字串,長度為k的整數倍,要你分成每個長度的段每個段內可以重新編排連續的幾個字母看作一個塊問最少有幾個塊解題思路:對於每個段來說,我們可以知道最少的塊,即裡面有幾種字母,記為chunk[i]我們設f[i][j]為第i段的第j位放在最末尾時的最少塊數則針

武漢科技大學官方OJ開發日誌(持續更新)

時間:2013.08.14今天主要是完成了contest模式下private和std登陸部分的代碼1.private許可權的比賽  登入時需要輸入比賽所設定的密碼。這裡所涉及到的代碼在/template/bs/contest_login.php  當輸入完密碼後,需要驗證密碼的正確與否,則上述form表單轉向/private_login.php中進行驗證,驗證時需要從contest表讀出cid對應的密碼與輸入密碼對比,如果輸入正確,則設定session[‘c’.$cid],然後跳轉到對應的con

線段樹端點更新 poj 2828 Buy Tickets

 題目連結:http://poj.org/problem?id=2828 題目意思:有n個人排隊,每個人有個pos值,和value值,表示他可以插到第pos個人的後面,輸出最後的隊形序列。 解題思路:如果順著插的話,要移動後面的隊列,如果用鏈表的話,找到插入的位置很費時。如果逆著考慮的話,當前的人插到恰好有pos個空位的最小的地方,就很簡單。用線段樹維護區間內空位的個數,如果要求的空位元大於左邊區間的空位元,則減去左邊的空位元,再在右邊尋找。 總結:抽象出線段樹維護的空間很重要。 代碼://如果

UVA11404—–Palindromic Subsequence—–DP之LCS

題目地址:http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=2399題目意思:給你一個字串,問你其中能組成的最長迴文串,輸出字典序最小的解題思路:將串倒置和原串求LCS,然後取前len/2作為迴文串的前半部然後倒過來做後半部,注意長度的奇偶問題#include<cstdio>#include<cstring>#

hdu3487 Play with Chain(splay)

Play with ChainTime Limit: 6000/2000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 2720    Accepted Submission(s): 1103Problem DescriptionYaoYao is fond of playing his chains. He has a chain containing n diamonds

樹形dp hdu-4514 湫湫系列故事——設計風景線

題目連結:http://acm.hdu.edu.cn/showproblem.php?pid=4514題目意思:給你一張圖,讓你判斷圖中是否有環,如果沒環求出最長的路徑。解題思路:用dfs判斷是否有環,再用兩次dfs求出樹上的最長路了(樹的直徑)。這裡用到了一個樹的性質,從樹上的任意節點出發找到的最長路端點一定是該樹直徑的端點。證明請看這篇:http://www.haogongju.net/art/1384945代碼:#pragma comment(linker, "/STACK:1024000

poj2728Desert King(最優比率產生樹)

題目請戳這裡題目大意:一個王國n個城市編號1-n,1是首都,現在每個城市有座標(x,y)和海拔h,現在在n個城市直接修水渠,要保證每個城市有水,水渠是水平的,但是由於每個城市的海拔不同,所以2個城市間修水渠的時候要一個cost去修水泵,cost=要修水渠的城市之間的海拔高度差,現在要求修單位長度的水渠的cost最小。題目分析:n個城市修水渠,最少要修n-1條水渠,就是求給定圖的一個產生樹。同時產生樹要保證sigma(cost)/sigma(len)最小。這是一個最優比率產生樹的問題。詳細論文戳這

ZOJ2616 Duopoly 最小割

很明顯的最小割不同公司訂單分別連源點和匯點,容量是定價然後衝突訂單連邊。容量INF然後總和減去最小割就是答案DuopolyTime Limit: 10 Seconds      Memory Limit: 32768 KBTHE 30th ACM/ICPC ASIA REGIONAL 2005 HANGZHOU SITEOnsite Contest SessionProblem D: DuopolyThe mobile network market in country XYZ used to

總頁數: 61357 1 .... 19631 19632 19633 19634 19635 .... 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.