Time of Update: 2018-12-06
//其實這東西沒有想像的那麼複雜。。。//從java官網下載jdk,比我下載的事jdk6u31.bin。把jdk6u31.bin放到目前使用者主目錄下,當然這個隨意,愛放哪放哪,能找到就行。//變更檔許可權,不然不能執行chmod a+x jdk6u31.bin//執行./jdk6u31.bin//現在你之前確定的目錄下有一個 jdk.1.6.0_31檔案夾,裡邊就是jdk的各種lib,bin...//我把這個檔案隱藏掉mv jdk.1.6.0_31 .
Time of Update: 2018-12-06
ps:最近這幾次多校比賽,雖然題目,資料什麼的可能有些問題,但是有的人真心無聊的去蹭資料。。。所以想說點這幾次多校的感覺比賽的時候能蹭過去算是能力,但是比賽完了還是要好好總結。換幾種思路可以,但還是不要把時間浪費在不必要的東西上。比賽中能過的題沒有過多找自身的原因,不要一味的歸結到運氣或者狀態。拍代碼測資料要謹慎,保證代碼簡潔,切忌畫蛇填足(上次多校3就吃了這虧),多來幾次wa真的會影響心情。感覺到組隊做的話很有必要兩個人做一道題,除非那道題很簡單。拍代碼+測資料,盡量兩個人完成。不要把自己
Time of Update: 2018-12-06
/*在求周長之前最好線看一下求面積,這樣再求周長回好理解很多。題目是POJ 1177 http://poj.org/problem?id=1177POJ 1151也是這類問題,不過是求面積的,更簡單一些。*/#include <iostream>#include <cstdio>#include <cmath>#include <vector>#include <cstring>#include
Time of Update: 2018-12-06
題意:求一個圖中刪掉一個結點所得到的連通塊數量最大。 思路:設一個結點u,如果u是根結點(圖可能是不連通的,所以可能有多個根結點)則刪掉u所增加的連通塊數為 SUM(u的子結點) - 1;如果u是非根結點,v是u的子結點,則刪掉u所增加的連通塊數為 SUM(u->v為割邊, 既u是到v的割點);渣代碼:View Code 1 #include <iostream> 2 #include <cstring> 3 #include <cstdio>
Time of Update: 2018-12-06
確實是好題。。。看解題報告看了一天半,才大概明白是怎麼樣一個過程。最讓我糾結的是M,N的行列問題。。。。文字描述裡的M,N和圖片上的M,N不對應。本菜只能無比蛋疼而又暈暈乎乎的看。。。 -------------------------------以下部分轉自大牛chinaeli-----------------------------------------http://hi.baidu.com/chinaeli/blog/item/b932d4b430d60ac636d3ca34.htm
Time of Update: 2018-12-06
SnowflakeSnowSnowflakesTime Limit: 4000MSMemory Limit: 65536KTotal Submissions: 18478Accepted: 4770DescriptionYou may have heard that no two snowflakes are alike. Your task is to write a program to determine whether this is really true. Your program
Time of Update: 2018-12-06
題意看了老半天,就是說給一個序列[1, n],看是否是(1, 2, 3, ... n),入棧以後出棧時可以得到的序列。My Code:View Code #include <iostream>#include <cstdio>using namespace std;const int N = 100007;int st1[N], st2[N];int main() {//freopen("data.in", "r", stdin);int i, top1, top2,
Time of Update: 2018-12-06
比賽的時候真心沒想出來什麼好的dp方法。。。蛋疼!整個比賽腦子發懵。。。!dp[i][j]表示到第j個人,i到j是一個group時說真話的最大人數。num[a][b]統計出說前面有a個,後面有b個的人的個數,當然,不超過n - a - b;dp[i][j] = max{dp[k][i]} + num[i][n-j];ans =
Time of Update: 2018-12-06
求出強連通分量,縮點。得到新圖DAG, 求DAG中max(入度為0的點數,出度為0的點數);渣代碼:View Code 1 #include <iostream> 2 #include <cstdio> 3 #include <cstring> 4 #include <stack> 5 6 using namespace std; 7 8 const int N = 20010; 9 const int M = 5001
Time of Update: 2018-12-06
計算幾何學座標離散化 poj1151掃描線演算法poj3277,poj1177,poj1151,poj1765,poj2280,poj3004多邊形的核poj3130,poj3335幾何工具的綜合應用poj1066,poj1819,poj2043,poj3227,poj2165,poj3429 poj 1151線段樹+座標離散化;其實就是排序後重新編號~~掃描線演算法 poj 1177
Time of Update: 2018-12-06
矩陣快速冪。最外層的模數是1e9+7,第二層的模數 L1 = (1e9+7的迴圈節),第三層的模數是 L2 = (L1的迴圈節)暴力找出L2, L1, 然後矩陣快速冪即可。。。 View Code #include <iostream>#include <cstdio>#include <cmath>#include <vector>#include <cstring>#include
Time of Update: 2018-12-06
/*額滴神啊。。。調了整整一晚上。簡單染色問題,染完色後再掃描一遍,找出最大的連續是白色的序列。開始必須把0, 109 這兩個點加上去。就因為這個都快調shi了。。。掃描的時候用一個數組記錄染色後區間的顏色。然後找連續顏色是白色的最大區間。資料有點大,用離散化吧。*///My Code:#include <iostream>#include <cstring>#include <cmath>#include <cstdio>#include &
Time of Update: 2018-12-06
無向圖的Tarjan和有向圖求強連通分量的Tarjan很像...注意幾個不同... 1、沒有棧..所以判斷時先是看點有沒有訪問過...else的時候就直接更新Low...不需要再來個判斷instack.... 2、DFS時不能從 a 遞迴到了 b..b又馬上從a來更新...所以要多加一個notpre..代表遞迴b時是從哪個點進去的...防止這種情況..
Time of Update: 2018-12-06
這是道好題。至少我錯了不下10次。dp的兩個重點:轉移方程+初始化。偶敢保證,偶的轉移方程絕對沒問題。可是初始化上wa到shi了。昨天想了整整一晚上,跟經典01背包那麼像,加上一個容器就寫不出來了。然後問魚神,魚神說這題的資料人畜無害,哄小盆友的。我了個去!然後問他思路,說設f[i][j][k],表示前i個中挑j個占容量是k時的最大value,然後就沒有然後了。。。 我自己就在那列各種狀態,各種推導。思路還是很模糊,後來又好幾次問魚神。甚至有幾次讓我問的直接不鳥我了。T_T悲摧的人生啊。。
Time of Update: 2018-12-06
題目描述很嚇人。。。題意就是求出強連通分量,然後縮點得到DAG, 求DAG中出度為0的縮點,並輸出縮點包含的集合(可能有多個這樣的縮點)渣代碼:View Code 1 #include <iostream> 2 #include <cstdio> 3 #include <cstring> 4 #include <stack> 5 #include <algorithm> 6 7 using namespace
Time of Update: 2018-12-06
本菜把時間記錯了,沒趕上比賽T_T。這次的題貌似不是很簡單,今天大體做了一下250pt:水題550pt:題意是給出A, B, X, 求Y,使得A*p + B*q的所有能取到的值X*p' + Y*q'都能取到。如果有無限種可能就return -1。當X同時被A, B整除時return -1,其他情況枚舉y,同時滿足 (A - y*q')%x == 0 和 (B - x*p')%y == 0.View Code 1 #include <vector> 2 #include <
Time of Update: 2018-12-06
題意:求割點,並求出割點刪掉後剩下的連通塊數渣代碼:View Code 1 #include <iostream> 2 #include <cstring> 3 #include <cstdio> 4 5 using namespace std; 6 7 const int N = 1005; 8 const int M = 100000; 9 const int inf = ~0u>>2;10 11 struct node {12
Time of Update: 2018-12-06
Hangman Judge In ``Hangman Judge,'' you are to write a program that judges a series of Hangman games. For each game, the answer to the puzzle is given as well as the guesses. Rules are the same as the classic game of hangman, and are given as
Time of Update: 2018-12-06
謝勇大神畫了張圖,然後這個問題就解決了。。。本質是“半平面交”問題。直線切割多邊形,公用的部分就是多邊形的核這裡找到一個不錯的模板:http://blog.csdn.net/accry/article/details/6070621http://blog.csdn.net/candy20094369/article/details/6703940 #include <iostream>#include <cstdio>#include
Time of Update: 2018-12-06
這神題,暴力數組可過,vector可過,線段樹可過。。。時限拉的太長了,所以就成水題了。。。不過比賽的時候真的沒敢用數組暴力寫。。。說說線段樹的思路吧。對樹的每個節點 L, R, cnt, sum[5],分別表示左區間,右區間,這段區間上的點數,這段區間上sum[x%5]的和。先把所有的資料都讀入,然後離散化,去掉重複的資料建樹。再處理一邊就可以了。ps:分葉節點只有sum[0]需要更新,sum[1...4]更新不到。。這個注意理解。。View Code #include