Time of Update: 2018-12-06
第一眼看上去,很明顯的母函數嘛。然後巴拉巴拉代碼敲出來,TLE。我暈,再看,資料很大。母函數的三重迴圈會暴掉的,而且仔細想一下,這題相當於染色問題。用母函數的話有很多重複計算的地方。不許要知道湊成面值m時有多少中湊法,只知道可不可達就可以。 然後看到有人說用《背包九講》裡邊提到的單調隊列最佳化的多重背包。然後偶硬生生的啥都沒幹,用了兩天時間看單調隊列最佳化的多重背包。可惜最後結果是沒看懂。我覺得原因應該是背包這類dp總的思想理解的不好,以後要好好補補。 今晚實在受不了,論文看不懂,去找
Time of Update: 2018-12-06
題意:添加一定數目的邊,構成無向雙連通圖 方法:一個有橋的連通圖,如何把它通過加邊變成邊雙連通圖?方法為首先求出所有的橋,然後刪除這些橋邊,剩下的每個連通塊都是一個雙連通子圖。把每個雙連通子圖收縮為一個頂點,再把橋邊加回來,最後的這個圖一定是一棵樹,邊連通度為1。統計出樹中度為1的節點的個數,即為分葉節點的個數,記為leaf。則至少在樹上添加(leaf+1)/2條邊,就能使樹達到邊二連通,所以至少添加的邊數就是(leaf+1)/2。具體方法為,首先把兩個最近公用祖先最遠的兩個分葉節點之間串
Time of Update: 2018-12-06
內部賽遇到這道題SDUT_2369,map寫TLE。話說校內OJ很奇芭的把隊友的判成AC,把我的判成TLE。最後隊長總結說這是人品問題。。。汗 =_=///賽後用hash寫了一下,關鍵要處理衝突,用掛鏈法寫的。最後自己看了一下,怎麼看怎麼像鄰接表。或許可以把這個題改一下弄個不錯的圖論題,哈poj 1235 + ms, sdutoj 578 + ms。我們的伺服器還是很給力的。渣代碼:View Code 1 #include <vector> 2 #include
Time of Update: 2018-12-06
重點是怎麼建圖,糾結了一天看2-SAT的資料...a 表示1, a'表示0,則:1、a and b = 1, a' -> a, b'-> b (a b 同時為1 )2、a and b = 0, a -> b', b -> a' (a b 不同時為1)3、a or b = 1, a' -> b, b' -> a (a b不同時為0)4、a or b = 0, a -> a', b -> b' (a
Time of Update: 2018-12-06
Let the Balloon RiseTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 30537 Accepted Submission(s): 9980Problem DescriptionContest time again! How excited it is to see balloons floating around.
Time of Update: 2018-12-06
第一次接觸A*,感覺好神奇。。啟發函數:f(x) = g(x) + h(x);比如初始狀態為s,目標狀態為tg(x)表示從s到達狀態x所消耗的代價h(x)表示從x到達t所估算的代價g'(x)表示s -> x可能出現的最小代價h'(x)表示x -> t可能出現的最小代價 g(x) >= g'(x);h(x) <= h'(x); 好吧,上面全是概念。。。當g(x)
Time of Update: 2018-12-06
遞迴建立二叉樹,中序遍曆。。。。View Code #include <stdio.h>#include <string.h>#include <stdlib.h>#define N 10000int l[N], r[N], key[N], flag;void insert(int index, int x){if(x <= key[index]) {if(l[index] == -1) l[index] = flag;else
Time of Update: 2018-12-06
近日,北京青年報評論版刊登重慶語文教師徐曉的一篇文章,題目是“為什麼眾多語文老師反對高考唯寫作文?”閱後大有感慨,情不自禁地也要摻和議論一番。
Time of Update: 2018-12-06
這個題好糾結。。。比賽沒思路,回頭又看得出題報告。最後寫出來的數狀數組跑了1.5s。。。數狀數組的思想還算好理解,就是對角線的控制上。。糾結了。一個直觀的想法是首先用N^2的時間預先處理出每一個是1的點向上下左右四個方向能夠延伸的1的最大長度,記為四個數組l, r, u,
Time of Update: 2018-12-06
比賽的時候各種wa加TLE。。。好糾結。。。01...至今沒搞懂怎麼個過程。。。 04 gb用hash過得,後來看了一下標程,複雜度O(n^3),尼嘛,我寫個O(n^3*20)的演算法就逾時。。。!06 偶始終不明白容斥原理怎麼用的。。。估計各位大神是猜的公式,把1/p1 + 1/p2 + ... + 1/pn這個式子寫出來後邊的就可以猜了。。。07....很無語的一道題。直接暴力dfs能跑兩位元。。。09
Time of Update: 2018-12-06
簡單01背包:View Code 1 #include <iostream> 2 #include <cstring> 3 #include <cstdio> 4 5 using namespace std; 6 7 const int N = 12888; 8 const int M = 3407; 9 10 int f[N];11 int w[M];12 int v[M];13 14 int main() {15
Time of Update: 2018-12-06
Linear Cellular Automata A biologist is experimenting with DNA modification of bacterial colonies being grown in a linear array of culture dishes. By changing the DNA, he is able ``program" the bacteria to respond to the population density of the
Time of Update: 2018-12-06
題意,給出每個兒子喜歡的mm的編號,然後再給一個原定的配對序列,求出每個兒子可以泡的mm,並保證每個兒子都有mm泡。 思路:看得大牛的思路,比如兒子u喜歡mm v,則u -> v建一條邊。給出的配對序列中,兒子u要泡v則 v -> u建一條邊。然後得到一個有向圖,然後求出強連通分量。就ok啦ps:1wa沒有初始化,2wa結果沒有排序輸出。。。一個國王搞出2000個兒子,Orz~~渣代碼:View Code 1 #include <iostream> 2
Time of Update: 2018-12-06
轉自白神:http://hi.baidu.com/%B0%D7%D2%C2%C9%D9%C4%EA2012/blog/item/d2a1a43291acbe3c0a55a9b7.html Single Round MatchSRM 522 DIV1 1050pt ( 很不錯的dp題,先需要思考來分析各種情況 ) 推薦代碼: practice room writerSRM 521 DIV1 500pt ( 枚舉+小位移,考思路 ) 推薦代碼: ACRush,crazyb0ySRM 52
Time of Update: 2018-12-06
Number SequenceTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 40967 Accepted Submission(s): 8785Problem DescriptionA number sequence is defined as follows:f(1) = 1, f(2) = 1, f(n) = (A *
Time of Update: 2018-12-06
首先這是要解決什麼問題:一個帶權完全圖,每條邊都有自己的花費值cost[i]和收益值benifit[i],如果用x[i]來代表一條邊取或不取,那麼求一個產生樹。要求:r=(∑cost[i]*x[i] ) / (∑benifit[i]*x[i] )最小。經典題目:POJ2728 - Desert King如何來求解:這裡用到了0-1分數規劃思想,對於上式可以變形為 z(r)=∑cost[i]*x[i]
Time of Update: 2018-12-06
(本文首發於《上海資訊化》2007.6/70) 在當今資訊經濟與知識經濟“大行其道”的環境下,企業作為現代社會不可或缺的重要經濟實體,其生存發展總是與資訊資源的開發利用聯絡在一起。在激烈的市場競爭中,企業能否以優勢取勝,很大程度上取決於資訊開發的深度、廣度和品質,“控制資訊就是控制企業命運”已逐漸成為共識。 我國公司資訊化建設取得的成績有目共睹,但目前尚存在邊緣化、局部化的問題。
Time of Update: 2018-12-06
詳見:《演算法導論》HDU 43441、長度是N的因子(且大於1小於N),集合中的元素得兩兩互質 2、為了儘可能多的選出,每個L的質因子應當只包含N的一個質因子,L是一個質因子的整數次,所以K的值就是N中不同質因子的個數3、要想和最大,那麼使得每個L最大,只要使得質因子的指數最大即可所以用pollard_rho分解N的質因數,然後統計不同的質因子個數K,以及計算所有相同質因子乘積的和S特殊情況:如果N本身是某個質數的整數i次冪,那麼K只能等於1,因為L要小於N,所以L最大為該質數的i-1次冪
Time of Update: 2018-12-06
客觀原因很多,但我不想找了。水平在那擺著。。。。以後做比賽盡量找一個安靜的點環境,比如實驗室。昨晚一題沒做出來,今天回頭又翻了翻300pt:其實是道水題,很水很水的題。。。先統計出L,R所能到達的最遠位置。然後把'?'補給大的。如果dis(L) = dis(R) 則補給第一個出現的。View Code #include <vector>#include <list>#include <map>#include <set>#include
Time of Update: 2018-12-06
題意是夫妻倆洗衣服,只有一個盆。為了防止不同顏色的衣服混色,他倆一個用一個盆同時洗衣服,但只能是相同顏色的衣服。現在知道顏色數M, 衣服數N, 每件衣服的洗完所用的時間和每件衣服的顏色。求最短多長時間把所有的衣服洗完。 思路:把每種顏色的衣服歸類,求出第i種顏色衣服所用的總時間sum[i], 以sum[i]/2為背包容量,求出該容量是背包的最大value,sum[i] - f[sum[i]/2]就是洗這種顏色的衣服所用的時間。 ps:wa了兩次,不知道為什麼,又重新敲了一遍就過了。My