POJ 1094 floyd+拓撲序列

這道題這真的很糾結啊~ 記得那天做完昂貴的聘禮後,直接奔向這題了,但是坑爹的題目描述硬是讓我把那天寫的代碼重新寫了一遍,其實還不止一遍,應該是兩遍啊~~ 確實,我寫代碼還是存在著一些的問題,手速不夠快,失誤率太多,只能每次都按退格鍵。看似很快的敲擊鍵盤,其實只是在發泄罷了。POJ伺服器上不去了,搜了個對拍程式,覺得自己沒什麼錯了,答案也是一樣的。-------------------------------------------------分割線------------------------

[U]3.3.5 博弈原理,DP實現

想了很久,看了下題解頓悟了!赤裸裸的使用的博弈的原理,但是卻用DP的方法選項組。收穫頗多。/*ID:bysenLANG:C++PROG:game1*/#include<stdio.h>using namespace std;int sum[101][101];int dp[101][101];int num[101];int max( int a,int b ){ return a>b?a:b; }int min( int a,int b ){ return a<b?a:

HDU Bone Collector II 背包的K優解

演算法比較容易想到,每次做背包操作都會產生值的。記錄下排序就好了。不過關於排序的問題我倒是wa了很久,本來開個3維數組把所有的解都記錄下來,然後排序取出K大的就好了。但是卻wa了=

HDU ACboy needs your help 隱藏的分組背包水題

前幾天對這題編了碼。自己本地都跑不過。罷了,誰叫我不會做呢= =。今天被樹形DP虐了,沒想法了= =。回頭準備切切這題。分析了一下特點:總共要學習N天,每門課程學習的天數都有不同的價值。在每門課程中只能選擇一個指定的天數來學。Wait!!!

HDU 3535 混合背包

看來還是需要好好理解背包的含義啊!本來鄙人寫了3600+的代碼,各種悲劇。果然還是對背包的理解不深啊!看過人家的代碼後才A出來.....#include<iostream>#include<string>#include<cstdio>using namespace std;int dp[111][111];int max( int a,int b ){ return a>b?a:b; }int max( int a,int b,int c ){

HDU 1421 搬寢室

好好琢磨一下吧 DP....#include<iostream>#include<string>#include<cstdio>#include<algorithm>using namespace std;int f[2222][2222];int min( int a,int b ){ return a<b?a:b; }bool cmp( int a,int b ){ return a<b; }int powsum( int

圖論思想,DP構造求解

B-Travel By AirlineTime Limit : 3000/1000ms (Java/Other)   Memory Limit : 65535/32768K (Java/Other)Total Submission(s) : 24   Accepted Submission(s) : 1Font: Times New Roman | Verdana | GeorgiaFont Size: ← →Problem DescriptionYou have won a chance

POJ 1961 HDU 1358 KMP的性質

題目大意:求給出串的每個首碼串的重複次數。例如aabaabaabaab;1.aa中首碼a出現2次。2.aabaab中首碼aab出現2次3.aabaabaab中首碼aab出現3次4.aabaabaabaab中首碼aab出現4次.大概就是這麼個意思。這裡利用了kmp中的next標記的性質。看看這個字串下標:1  2  3  4  5 6  7   8 9  10 11 12原串:a  a  b  a  a  b  a  a  b   a   a   bnext:  0  1  2  1  2  3

差分約束系統總結

2011/10/08--2011/10/11四天的SPFA,Bellman_Ford,差分約束。今天來個總結吧(雖說還有SPFA的最佳化演算法沒學,以後遇到題目再解決吧)採用循序漸進的辦法來闡述這幾天的學習:1.Bellman_Ford演算法:主要思想在於三角形不等式與“疏鬆”思想。當d[s,v]>d[s,u]+w[u,v]時,對邊的權值進行疏鬆化。從寫Bellman_Ford後我便學會了指標式的單鏈表的使用,話說還是自己重新看了一遍教材才會的。//一下採用頭插法,簡單易懂Node *p=

POJ 1099 類比

這題類比得很蛋疼!所以來寫一點心得。眾所周知,OJ採用的讀取檔案的方法,所以會和我們肉眼看到的情況有些不同。拿這題為例,char(0)與char(32)看上去的效果是一樣的,32為正宗的空格,而0為不能輸出的字元,用看上去是一樣的,但實際上電腦處理的時候卻有很大的差異,當然啦,電腦比較的是ASCII碼值,看上去一樣才不管呢.....另外這題的話,對於Web頁面的輸出,還是應當copy到記事本中查看,這樣更加清晰,防止出現肉眼不可見的trick了.....代碼太醜了,就不貼了= =

POJ 1062 昂貴的聘禮 最短路枚舉等級限制

這題算是我自己做的了,從開始建模構圖構思,敲代碼,調試,重新想思路。雖然做這題做了很久,但是也算是了結了我的一個心愿吧,昂貴的聘禮是我從ACM入門時就開始想做掉的題目了,這次下了決心終於做掉了,開心啊~---------------------------------------------------分割線-----------------------------------------------------------這題可以用最短路徑的方法來做,A,B物品能夠換則有一條帶權邊。邊的值為A

[U]3.3.4 很不錯的DP題

開始沒有想法,後來一想,這是一道很明顯的DP題,當前點的的邊長正方形,決定於左邊下面左下角三個點的狀態。這樣就可以構造出一個更大的方形。/*ID:bysenLANG:C++PROG:range*/#include<stdio.h>using namespace std;int min( int a,int b ){ return a<b?a:b; }int min( int a,int b,int c ){ return a<min(b,c)?a:min(b,c);

HDOJ The more, The Better 樹形DP

算是樹形DP的入門題吧。學習了一下人家的代碼過的。在網上看了幾種版本。果然還是dfs遍曆樹好啊。樹形結構用指標來建的話可以省去很多麻煩。另外這題不能赤裸裸的從葉子節點更新,因為根是可以選擇多個葉子的。沒用完一個葉子,就必須把相應的父親節點更新。還不錯的題。#include<iostream>#include<cstring>#include<cstdio>#define MAXN 222using namespace std;struct node{

HDOJ Robberies 01背包

囧爆了!!! 莫名其妙的就ac了。因為前段時間做了一道類似的題目,大概是出國留學的機率問題。和這題很像。然後憑藉記憶把這題給敲了,一交就過了!我勒個去!不帶這麼玩的!!!果然做題多還是有點點好處的= =。話說題目我都沒怎麼看懂呢= =DP切不動了。記錄一下題意吧:A-I題:acJ題:題意沒看懂= =,下次再看= =K題:01背包的第K優解... 雷死哥了!L題:分組背包的變形,每個分組中至少取一個物品。= =這不是坑爹麼!M題:水過...

HDOJ 飯卡 01背包

水題。不過還是讓我wa了幾次。原來是在於初始化的問題。罷了罷了。想清楚還是很好的。去食堂買菜,最貴的是一定要刷卡的。留著刷吧,然後讓其餘的盡量接近5塊錢就好了。和其他人的代碼有點不同... 本質是一樣的啦。代價和話費是一樣的和那個BIG EVENT AT HDU那題一樣。這種解法知道怎麼做了。繼續切。。。。#include<iostream>#include<string>#include<cstdio>using namespace std;int max(

HDU 3499 Flight spfa+dp

自認為相當正確的代碼,交上去TLE了。以為是自己的方法錯了,從昨晚開始想,到底錯哪了?昨晚上看到了熟人的代碼,依然大牛。網上的解法大多是正反向最短路+枚舉折半邊。這樣得出。但是My Code是:用dist[x][0]記錄到x點使用折半票的花費,dist[x][1]記錄到x點全票的花費。這樣dp方程就很容易出來了...

HDU 2577 How To Type DP

哈哈~這題秒掉了,總的來說這些天的DP苦修還是有點成果的。哇哈哈哈。做題過程大概是這樣的,前幾天看了下這題,完全不敢切,果斷的沒思路。今天再一看,在紙上用筆演練了下,發現基本上能推出公式了。呵呵,蠻好玩的麼,DP,雖然只是道水題,但是也說明了我在進步啊~ 哈哈哈#include<iostream>#include<string>#include<cstdio>using namespace std;int min( int a,int b ){ return

HDU 2571 命運 水DP

消極題解湊數= =話說今天的水題有點多了= =本來想用最短路做的,但是不想那麼麻煩,滾動數組也不想用,能水就水吧。記得以前做過一道類似的,不過是走路方針可以斜線,飛躍什麼的,各種神。不過是BFS+隊列罷了+GCD 罷了罷了還是水,不說了....#include<iostream>#include<cstdio>#include<string>using namespace std;int max( int a,int b ){ return a>b?a:

HUD I love sneakers! 變化的分組DP

網路上題解很多。我就不亂說了。首先分組背包的原型:給物品分組,容量為V的背包,每個分組內的物品互斥,每個分組最多取一個物品。求最大值。代碼很簡單:for( int i=0;i<group;i++ )for( int j=V;j>=0;j-- )for( int k=0;k<total[i];k++ ) f[V]=max( f[V],f[V-cost[k]]+value[k] );背包九講裡面有,相信大家都看了。不多說。而這題,是在每個分組中最少取一種物品。so~ 不能用一維了,

[U]3.2.1 Factorials 有點點意思的水題

以前在XTU的比賽中做過這個題,當時沒過,到後面還是用了個猥瑣的方法過的。可能是不記得了當時用的高精度法沒過,這次看到這題直接採用赤裸裸的高精度,結果... 在本地跑那速度.....= =||||於是乎,還是採用了猥瑣的方法;但是為什麼每次mod100000呢??而每次mod10000就WA呢?解釋:首先我們不能採用赤裸裸的保留末位非零數的方法。原因:進位,使得末位為0;而在一種情況下,會發生進位,兩乘數含有2和5的因子,末位為0的數例如x*10==x*2*5,所以末位為零一定包含了這兩個因子!

總頁數: 61357 1 .... 13441 13442 13443 13444 13445 .... 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.