原创 找素數

(1)增加布爾型數組 找到一個素數,則其所有倍數均不是素數 #include <stdio.h> #include <string.h> #include <math.h> int prime(int i) { int j;

原创 Number of Ways--CodeForces 466C 水題

題意:輸入一組數,將其割成三段,每一段的值相同 解法:因爲要割三組值相同,所以每一組的值一定是整體求和的1/3 千萬記得long long,血的代價 #include <stdio.h> #include <string.h> long

原创 最長公共子序列Common Subsequence POJ1458

#include <stdio.h> #include <string.h> int max(int a,int b) { return a<b?b:a; } int main() { int dp[1005][1005

原创 歐拉函數

φ函數的值φ(x)表示小於等於x且與x互質的數 通式:φ(x)=x(1-1/p1)(1-1/p2)(1-1/p3)(1-1/p4)…..(1-1/pn),其中pn是x的質因數 例如:x=12,φ(x)=12*(1-1/2)*(1-1/3)

原创 poj1061 青蛙的約會 擴展歐幾里得

(1)at+bp=c有解的條件是c%gcd(a,b)=0; (2)求解at+bp=gcd(a,b)得x1,y1,則原式解x=x1*(c/gcd(a,b)),y=y1%(c/gcd(a,b)); (3)問題等化爲(n-m)t+pl=x-y;

原创 HDU 4746 Mophues 莫比烏斯第三彈

題意:1<=x<=n,1<=y<=m,使得gcd(x,y)=k,k的素因數個數小於等於p 例:24=2*2*2*3,k=4 解:設f[n]爲gcd(a,b)=n的對數       F[d]爲d|gcd(a,b)的對數     f[n]=s

原创 hdu 5492 Find a path DP

題意:矩陣中找一條路徑,是的路徑上的各個點的數值方差最小 解一:DP 將題中算是化簡可得(n+m-1)*segma(Ai^2)-(segma(Ai))^2 dp[i][j][k]表示到矩陣中i,j這個點和爲k的最小的Ai^2的和 dp[i

原创 HDU 1695 GCD 莫比烏斯第二發

題意:求[1,b]和[1,d]內公約數爲k的對數(錯了N發之後纔看到a和c爲1。。。) 解一:容斥原理和歐拉函數 http://www.cnblogs.com/kuangbin/p/3269182.html 參考大神的文章吧,我沒寫=-=

原创 hdu 5303 Delicious Apples(dp)

題意:一個長爲L的圈種上n顆樹,每棵樹的座標爲xi,結了ai個蘋果,用大小爲k的籃子把所有蘋果裝回來,問最少走多少路 解一:被神奇的dp教做人了 #include <stdio.h> #include <string.h> #inclu

原创 Digital Clock 數論水題

Description Digital clocks usually show the time in the form hh:mm:ss, where hh is a number between 00 and 23, and both

原创 zoj 3175 Number of Containers 分塊加速

題意:計算n以內i的倍數的個數,不包括i本身,求和 解:直接暴力for一遍一定是不行的,不過用一個分塊加速就可以了 #include <stdio.h> #include <string.h> int main() { int t

原创 springMVC框架下編碼與解碼(中文亂碼)

編寫項目中突然用到了中文,然後發生了一大堆的亂碼,於是在百度上奮鬥良久,終於解決了問題。 項目在java8環境下搭建,使用spring4.3.6 1)前端頁面部分 <!DOCTYPE html> <html lang="en"> <he

原创 SPOJ VLATTICE Visible Lattice Points 初入莫比烏斯

題意:求兩個點(x,y,z)的連線不經過其他點有幾個 解:即爲求GCD(x,y,z)爲1的點有幾個 解一:因爲x,y,z均在1~n內,所以可以用歐拉函數解出 解二:莫比烏斯反演 設f[n]爲GCD(x,y,z)=n的個數 設F[b]爲b|

原创 ResultSetMetaData的使用心得

今天寫頁面的時候,發生了離奇的錯誤,明明語句在數據庫中執行能查出6個字段,但是返回數據時只剩5個了,檢查了好多遍代碼,終於發現ResultSetmetaData的一點使用心得。public List<Map

原创 HDU 5289 Assignment

題意:在n個數中找一共有幾個數組,使得數組內的最值差不超過k,數組元素要求連續 解一:ST #include <string.h> #include <math.h> #include <stdio.h> #define ll __int