原创 最長公共子序列的問題 (DP)

給定兩個字符串s和t, 求出這兩個字符串最長的公共子序列的長度。 dp[i][j]:=s和t對應的LCS(最長公共子序列)的長度。 int n, m; int dp[MAX][MAX]; void solve () { for (

原创 HDU 6060 RXD and dividing

題意: 給出一個具有n個頂點的樹, 將其中的2~n分成k部分, 求1號頂點到分成k塊後各個頂點的最大權值和。 思路: 將2~n的結點編號{1~k},每條邊的權乘以其下子樹的大小與k的較小值。 代碼: # include <bit

原创 01揹包和完全揹包

int dp[MAX]; void ()//01揹包問題 { for (int i=0; i<n; ++i) for (int j=W; j>=w[i]; --j) { dp[j] =

原创 迪傑斯特拉算法

首先設置頂點集合S, 將起始點加入該集合,根據起始點到其他頂點的路徑長度,選擇路徑長度最小的頂點加入集合,根據所加入頂點更新源點到其他頂點的路徑長度,然後在尋找最小邊的頂點,重複上述操作直到求出所有頂點的長度。下面是代碼: void di

原创 HDU 6085 Rikka with Candies

題意: 給出一個A數組中有n個數, B數組中有m個數, 再給出q個詢問每個詢問爲k, 求有多少對pair (i, j)使得Ai 對Bj 取餘爲k結果對2取餘。 代碼: # include <bits/stdc++.h> using

原创 2017山東省賽B題Quadrat

題目鏈接 題意: 找出有多少個數,它的長度爲n,且平方後對10^n取模與原來的數之間的差距不大於d(每一個數字的差距和) 思路: 對於10以內的數,如果d等於零的時候,只有四個數滿足要求:0,1,5,6 如果d等於二時,有八個數滿足

原创 POJ 1125 Stockbroker Grapevine(Floyd算法)

Description Stockbrokers are known to overreact to rumours. You have been contracted to develop a method of spreading d

原创 拓展歐幾里得算法

在介紹拓展歐幾里得算法之前,先說一下歐幾里得算法: 歐幾里得算法又稱輾轉相除法,由於計算兩個整數a,b的最大公約數。 基本算法:設a=qb+r,其中a,b,q,r都是整數,則gcd(a,b) = gcd(b,a%b) 代碼如下: in

原创 SDNU 1320 Look for homework

Description Super scholar robs the all homework of others.The monitor decides to combat with the super scholar so

原创 2017 Multi-University Training Contest - Team 2 1001 1 Is Derek lying?

題目鏈接 題意: 先給出三個數,分別表示題目的個數,Derek說自己題目正確的個數和Alfia說自己題目正確的個數,然後給出兩個字符串,分別表示兩個人的答案,判斷是否有人說謊。 思路: 先找出兩個字符串相同的個數和不同的個數,然後用一

原创 2017 Multi-University Training Contest - Team 1 1002 Balala Power!

題目鏈接 題意 給定多個字符串,給二十六個字母賦予0~25的值,每個字符串形成一個26進制的數字,求怎麼分配權值使得這幾個字符串的和最大。 思路 官方:每個字符對答案的貢獻都可以看作一個 26 進制的數字,問題相當於要給這些貢獻加一個

原创 KMP算法

以下思想來源於嚴蔚敏的《數據結構(C語言版)》以及高一凡的《數據結構與算法解析》 先介紹一個比較基礎的算法:基本思想:從主串S的第POS個字符和模式串的第一個字符比較之,若相等,則繼續比較後續字符;否則從主串下一個字符起重新和模式

原创 HDU 6069 Counting Divisors

題目鏈接 思路: 先打一個從1到1e6的素數表,然後枚舉不超過r√ 的所有素數,然後再去枚舉這些素數在l和r區間內的倍數,將其分解質因數,最後剩下的素數的c只可能是0或1,計算出每個數對應的因子個數,對於每個數的因子個數就等於枚舉的因子

原创 1283.山師好男友(開關燈問題)

Description 川川想給他的女朋友一些驚喜,於是他準備了好多彩燈,他的女朋友十分感動,然後讓川川這樣做:如果她走到了第2盞彩燈處,那麼川川就要改變所有2的倍數的燈的狀態(燈有兩種狀態,開着的和關着的),假如一開始所有燈都是關着的

原创 HDU 2095 find your present (2) (位異或)

Problem Description In the new year party, everybody will get a “special present”.Now it’s your turn to get your speci