原创 SPOJ_4_ONP

中綴轉後綴,沒什麼好說的 /* *NAME: ONP *LANG: C++ */ #include <iostream> #include <string> #include <fstream> using namespace st

原创 Sgu105

目測SGU中最水的一題,找到規律就行了 /* *NAME:DIV 3 *LANG:C++ *Source:sgu105 */ #include <iostream> using namespace std; int n,ans;

原创 sgu103

狗題,其實就是很簡單的最短路問題的擴展,一開始不明就理的TLE,MLE,WA,蛋碎了一地,後來發現題目說沒有路徑就輸出0,突然醒悟了! /* *Name:Traffic Lights *LANG:C++ *source:sgu103

原创 usaco4.4.2

題目大意: 給定一個網絡,求該網絡的最小割,並求割邊最少的割集,並按字典序最小輸出割集。 1、求最小割應該不難,根據最大流最小割定理,直接跑一趟最大流就可以了 2、第二問求割邊最少的割集小鬧。其實可以通過對邊的容量進行修改來完成。 一般情

原创 Uva393 The Doors.

原題鏈接:點擊打開鏈接 題目大意:在一個(10*10)平面內,求出發點(0,5)到終點(10,5) 的最短距離。 計算幾何的基本題目,利用叉積來判斷線段門與門之間是否能夠相連,然後用dijkstra求最短路經 #include <ios

原创 Usaco 5.4.5

這道題要求刪去最少的點,使得網絡中給定兩點不連通。 這個最少的點在圖論中有具體的定義,有名稱爲點連通度。 那麼,如何求這個點連通度呢? 我們可以考慮從前面的知識進行轉化,前面有一道題目是讓我們求邊連通度。 那麼從邊連通度轉化爲點連通度是否

原创 sgu102

這是一道水題,判斷兩個數是否是質因數就可一了 /* *Name:coprimes *LANG: C++ *Source:sgu102 */ #include <cstdio> #include <cstdlib> #includ

原创 匈牙利算法

重新寫了一份,更新了一下注釋 二分圖匹配的具體知識可以參見維基百科 以下注釋之適用於對於該程序的理解 /* *The HungarianAlgorithm *使用鄰接表和DFS *時間複雜度O(mn) *空間複雜度O(m+n)

原创 SPOJ_839_OPTM

最小割,該題因爲要求XOR後的最小值,我們可以通過二進制的知識知道,XOR後的結果各個位置上是互不影響的,XOR只有在兩數不同的時候纔會得到1. 於是,我們在建圖的時候可以將原圖G中每個點屬於V拆成31位,每位成爲一個點,屬於同一位的所有

原创 usaco3.4.1

這道題花了有點時間,不擅長計算幾何,搞了略久,最後0.929s卡過,寫的略萎,邊曬代碼,邊講思路。 /* ID: volz.kz.g PROB: fence4 LANG: C++ */ #include <iostream> #inclu

原创 SPOJ_1_PRIME1

USACO快刷完了,從今天開始寫SPOJ的題解了。 這一到題不難。 高斯篩法+埃拉托色尼篩法,先求出1-33000的所有素數,再用這些素數去求得區間內所有素數 /* *NAME: prime1 *LANG: C++ */ #incl

原创 Sgu101

這道題是求一條能夠連通所有骨牌的路徑,一開始我吧骨牌當作節點,但這樣明顯是要超時的,後來經過討論 其實可以吧骨牌上的數字當作節點,骨牌當作邊, 這樣做一遍Hierholzer's algorithm,找到一條記錄頂點編號的歐拉路徑,再從頂

原创 Sgu104

花店櫥窗問題,不用多說了吧,是人都知道。 /* *Name:Little shop of flowers *LANG:C++ *Source:sgu104 */ #include <cstdio> #include <cstri

原创 usaco4.3.2

先貼代碼 USER: Gao Bicheng [volz.kz1] TASK: prime3 LANG: C++ Compiling... Compile: OK Executing... Test 1: TEST OK [0.

原创 平衡樹的練習

關於平衡樹的練習,以後關於平衡樹的題都放這兒了 1、HNOI2002營業額統計:古董題了,題目大意就是維護一個數列,只有一個操作,在數列中插入一個數,計算出數列中與這個數之差的最小絕對值,統計總和。 裸的平衡樹模板題,方便一點可以用set