原创 Poj 3276 Face The Right Way

鏈接: 點擊打開鏈接 題意: 有N頭牛朝着正面或反面,先有一個機器能夠將連續的K頭牛翻轉,問K取多少時操作次數最少。 題解: 對於一個固定的K值我們可以枚舉每頭牛判斷是否需要翻轉,判斷一頭牛是否要翻轉則需要知道它之前被翻轉了幾次與它初

原创 三個串的最長公共子序列

直接放dsy大佬的思路:#include<iostream> #include<stdio.h> #include<algorithm> #include<cmath> #include<stdlib.h> #include <strin

原创 UVa 10817 Headmaster‘s Headache 【01揹包 位運算】

題意:劉汝佳訓練指南p95 題解:此題可以設dp[s2][s1] = 授課狀態爲s2、s1時的最小花費(s1爲課程授課狀態爲1的集合,s2爲授課狀態爲2的集合) 然後視招募的新老師爲要裝進揹包裏的物品,授課狀態s2,s1爲容量,最終答案

原创 Codeforces Round #403 C. Andryusha and Colored Balloons

題目鏈接:點擊打開鏈接 題意:給出n個點,(n-1)條無向邊,問能否將點染色使所有點與其鄰接的點以及距離爲1的點的顏色不同(如:a與b存在一邊,b與c存在一邊,則a,b,c三點顏色應不同) 題解:將圖看做一棵樹,對於一個節點的子節點我

原创 Codeforces Round #403 B. The Meeting Place Cannot Be Changed【二分】

題目鏈接:點擊打開鏈接 題意:給出n個人距最南端的距離Xi,與每個人的最大速度Vi,並且每個人可以向南或者向北走,問最少花多少時間可以使所有人到一點。 題解:二分,判斷取左區間還是右區間則是看最晚到達終點的人的初始位置是在終點左邊還是

原创 點集配對 【dp 位運算】

劉汝佳訓練指南P61 這裏第二個for裏的break保證了不出現重複組合 #include<iostream> #include<stdio.h> #include<algorithm> #include<cmath> #include

原创 Poj 2955 Brackets 【區間DP】

鏈接: 點擊打開鏈接 題意: 最大括號匹配數 題解: dp[i][j] = i~j最大括號匹配數 如果s[i]==s[j],dp[i][j] = dp[i+1][j-1]+2 否則 dp[i][j] = max(dp[i][k]+dp

原创 codeforces 768C Jon Snow and his Favourite Number 【思維】

鏈接: http://codeforces.com/contest/768/problem/C 題意: 現在要對一個長度爲n的數組a[i]進行k次的增強。 每次增強是先對數組a進行排序再間隔的對數組a XOR x 題解: 一開始我是想

原创 codeforces 767C Garland 【dfs】

鏈接: http://codeforces.com/contest/767/problem/C 題意: 給出一顆樹,每個子節點有個權值,問能否去掉兩邊生成三棵樹,使這三棵樹的權值和相等 題解: 設整棵樹的權值和爲sum, 先dfs計算

原创 Poj 1837 Balance【DP】

題目鏈接: 點擊打開鏈接 題意: 有一個最大長度爲15的天平,上面有C個掛鉤(左邊的座標爲負,右邊的座標爲正),現在有G個砝碼,問將所有砝碼掛上有多少總掛法能使天平平衡。 題解: 我們可以拿着砝碼模擬一下操作,便可以得到這麼一個狀態轉

原创 codeforces 767B The Queue【貪心】

鏈接: http://codeforces.com/contest/767/problem/B 題意: Vasya要去護照,然而接待員在【ts,tf)的時間段內上班,處理一件業務需要花費時間t,並且有n個人在T【i】的時間去辦護照,當V

原创 tyoj 1051 選課

題目鏈接:http://www.tyvj.cn/p/1051 題解: 設dp[i][j] = 第i門課選課程j的最大學分,vis[i][j][k]標記第i門課選課程j時選修課k是否選擇,par[i]表示i的先修課程(無先修課程的默認先修

原创 Poj 1416 Shredding Company 【dfs】

鏈接: http://poj.org/problem?id=1416 題意: 輸入兩個數t和num,問如何分割後的num的和小於t並且與t最接近 題解: 按着題目思路敲就好了 #include<iostream> #include<

原创 UVa 10635 Prince and Princess 【LIS】

劉汝佳訓練指南 p66 這題很好的把LCS問題轉化成了LIS問題 因爲兩個數組保存的都是數字並且每個數組內不出現重合的數字,所以將B數組中的數字轉化成在A數組中的編號然後就轉化成了LIS問題了 #include<iostream> #i

原创 Poj 3274 Gold Balanced Lineup 【哈希】

鏈接: http://poj.org/problem?id=3274 參考了: http://www.cnblogs.com/lyy289065406/archive/2011/07/30/2122224.html 題解: 最重要的是問