原创 ZOJ 1039 Number Game

記得很久前寫過,博弈的題目大同小異,要注意的就是兩點:   1、狀態的表示   2、狀態之間的轉換:只要能達到必敗態,就是必勝態。反之就是必敗態。起點爲必敗態。   另外,數組作爲參數傳遞時是指針傳遞。   #include <cstd

原创 ZOJ 2074 Trip

先求凸包再枚舉包上的點對距離。 #include <cstdio>#include <string>#include <cmath>#include <algorithm>using namespace std;#define eps 

原创 ZOJ 1827 The Game of 31

博弈的題目。123456各四張花色,遊戲開始時從中抽掉一些牌。每人一次抽取一張相加,和大於31者失敗。求必勝策略。 設定狀態表示爲行動結束時剩下的sum。假如每種牌無限制張數,那麼就等於搶七,必勝態爲0、7、14、21、28。 但是當給定

原创 ZOJ 1941

無聊題,中綴表達式。一口氣寫了290行,就如炎炎烈日下當頭一兜涼水般的爽快。     #include <iostream> #include <string> #include <vector> #include <stack> #in

原创 ZOJ 2646 Joseph's Problem

給出K和N,求 ,N,K < 109。 數據如此BT,從1到N窮舉是不可能的。不妨列出小規模時的情況。比如N = 5,K = 5。 5%5=0  5/5=1 5%4=1  5/4=1 5%3=2  5/3=1 5%2=1  5/2=2 5

原创 關於一個小問題的聯想

潮溼的天氣和人的心理一樣,散發出懶洋洋的熱空氣。懶的寫東西,帖一篇Love_Shsean的文。 我們設柱型圖的元素高度爲h [ ],那麼我們要求的就是max { h [i] * (Right [i] - Left [i] + 1) },其

原创 弦圖判斷

定義: 無向圖中,如果任意邊數大於3的環,至少存在一條邊連接環中不相鄰的某兩 個點,則稱此圖爲弦圖(Chordal Graph)。 zoj1015的題

原创 歸併排序和求逆序數對

  合併排序(MERGE SORT)是又一類不同的排序方法,合併的含義就是將兩個或兩個以上的有序數據序列合併成一個新的有序數據序列,因此它又叫歸併算法。它的基本思想就是假設數組A有N個元素,那麼可以看成數組A是又N個有序的子序列組成,每個

原创 ZOJ 2834 Maximize Game Time

 07年浙大賽的一題。TreeDp。感謝某位不知名牛人。   /**//*每次遍歷子結點來進行DP過程。每個結點保留下3個值,以它爲跟的樹所有結點值的和(結點數)totel,進行到這個結點的最優值finish,以及不能走到當前結點,子結

原创 C時間函數概述

關鍵字:UTC(世界標準時間),Calendar Time(日曆時間),epoch(時間點),clock tick(時鐘計時單元)1.概念在C/C++中,對字符串的操作有很多值得注意的問題,同樣,C/C++對時間的操作也有許多值得大家注意

原创 ZOJ 1346 Comparing Your Heroes

AndyZh說過: “我們想求一堆人的排列總數,它等於在這一堆人中 減去 每一個 入度爲 0 的人,剩下的人的排列總數的和。具體實現也藉助了回溯法。 如果只剩下一個人,那麼排列總數爲1,這是遞歸的邊界。 ”   #include <cs

原创 SRM397 CollectingMarbles

Maybe you don't know, but you are a fanatic of colored marbles. You want to collect them all, but you may not be able t

原创 ZOJ 2852 Deck of Cards

什麼是鬱悶?就是把整段代碼從頭至尾天翻地覆修改了一遍之後,發現錯誤出現在最不起眼的地方。今後出現if...if...if...else的時候一定要小心,很可能就把原來的意思搞反了。 不難的DP題。方程是C[n,a,b,c] = max(C

原创 ZOJ 1918 Ferry Loading II

設f(i,j)表示第i次運輸能將第j輛車運到對岸,抵達時所花的最小時間。 f(i,j)=f(i-1,j-k)+回岸的時間T+T。當然,若回岸時車還未到達,f(i,j)=j車抵達的時間+T。   #include <cstdio>#inc

原创 ZOJ 1063 Space Station Shielding

練習floodfill很好的題。第一次考慮從內部有模塊的點開始floodfill,發現無法識別內部空倉和外部空倉。反向思考,從外部空倉進入模塊,得解。   #include <cstdio> #include <string> int