原创 Codeforces #277.5 (Div. 2) B. BerSU Ball(DP:LCS)

典型的LCS類問題 排序的時候寫成了從下標0開始。。跪了 代碼如下: #include <bits/stdc++.h> #define MAXN 110 using namespace std; int a[MAXN], b[MAXN]

原创 uva 11542 Square(數學:高斯消元)

給出n個數,問你有多少種取數的方法使得取出數的乘積是一個完全平方數 這個題的思維跨度還是很大的 因爲題目中提示每個數的素因子不會大於500 考慮從唯一分解式着手 把這n個數寫成唯一分解式的形式 求出對應素因子的指數 比如4 6 10 15

原创 hdu 3364 Lanterns(數學:高斯消元)

典型的開燈關燈問題 行列關係找準就好 數組忘了初始化跪了幾發。。。 代碼如下: #include <cstdio> #include <cstring> #include <iostream> #include <algorithm> #

原创 uva 11021 Tribles(數學:概率+遞推)

給出麻球活0 1 2 ... n-1天的概率 讓你算初始k只麻球最多活m天的概率 推算能活到m天的概率應爲這一天麻球的數量×m-1天的概率 代碼如下: #include <cmath> #include <cstdio> #include

原创 poj 1222 EXTENDED LIGHTS OUT(數學:高斯消元||爆搜:DFS)

因爲上一行的狀態僅與當前行有關 所以我們可以考慮枚舉第一行的1<<6個狀態 之後再從第2行到第6行開始根據上一行的狀態而改變 時間複雜度是O((1<<6)*5*6) 代碼如下: #include <cstdio> #include <c

原创 uva 11424 && 11426 GCD - Extreme(數論:歐拉函數)

看着白書做的,方法太巧妙了。。。 不過也總算掌握了算區間GCD的方法 我們令f(n) = gcd(1, n) + gcd(2, n) + ... + gcd(n-1, n) 則對應的結果s(n) = f(2) + f(3) + ... +

原创 hdu 2476 String painter(區間DP)

題意是給兩個字符串a和b 問你最少多少步操作使a變爲b 這裏的操作是指把a中任意區間段的字符變爲相同的字母 先把a串看做空串,直接dp操作 然後在根據a串的狀態來改變dp值 代碼如下: #include <cstdio> #include

原创 Codeforces #277.5 (Div. 2) A. SwapSort(基礎:選擇排序)

讓出n個數,讓找出交換次數小於等於n的排序方法。。。 直接選擇排序,也是醉了 代碼如下: #include <bits/stdc++.h> #define MAXN 3300 using namespace std; int a[MAX

原创 GDB 的簡單用法

一直以來調試都是使用printf(...) 感覺也挺方便的,設置斷點什麼的也不見得多好 但既然自己不會,就學習一下吧 先上一份簡單的代碼: #include <cstdio> #include <iostream> #include <a

原创 模板:(數學:高斯消元法)

其實感覺白書上的代碼挺不錯的 簡單易懂,但是功能好像不太強 找題解的時候發現基本清一色的是Kuangbin的模板 我也在這裏貼一下,方便以後使用 附原模板地址:點擊打開鏈接 代碼以及解釋如下: #include <cmath> #in

原创 poj 1830 開關問題(數學:高斯消元)

感覺還是蠻簡單的 因爲高斯消元中i、j下標敲反了,跪了幾發。。。 我們可以建立形似a[i]^x1^x2^...xn = b[i]的方程組 再解方程就可以了 題中給出i,j表明第i個開關會影響第j個燈 也就意味着第j個燈受xi影響,不要弄反

原创 poj 2318 TOYS(計算幾何:求叉積)

給出一個被n條線段分割的矩形 有m次詢問,每次找到這個點所屬的四邊形 用二分的方法,找到對左側線段叉積爲正,右側線段叉積爲負的情況 直接套模板,代碼如下: /* **************************************

原创 Codeforces #277.5 (Div. 2) C. Given Length and Sum of Digits...(簡單貪心)

給出m和s 讓你輸出m位且各位和爲s的最小數和最大數 簡單貪心搞一搞就好了 最小數先令第一個爲1,接着填0,最後以爲填s-1,然後從後往前遍歷對>9的處理 最大數直接從前往後每次取可以取的最大數 注意m=1的時候需要特判 代碼如下: #i

原创 uva 10870 Recurrences(數學:矩陣快速冪)

給出一個遞推關係,讓你求關係中的第n項 一般遇到數據比較大的遞推都可以考慮使用矩陣快速冪 這裏矩陣不再描述,白書上有題解 代碼如下: #include <cstdio> #include <cstring> #include <iostr

原创 poj 2398 Toy Storage(計算幾何:叉積)

基本上和poj 2318一模一樣。。。 改下輸出就可以了 代碼如下: /* *********************************************** Author :yinhua Created Tim