原创 2017川大校賽A題

題意就不說了,我們也錯了那麼多次,這個題有兩個問,其實比較難的是第一個問,但是剛好第一個問我在上一週曾經問過龍哥,那麼第一個問就秒出答案,對於第一個問的精度問題,當暴力算時n是小於10的,答案要求保留前6位小數,沒問題。然後第二個問就是一

原创 HDOJ 1074 Doing Homework (狀壓DP)

題意:給出 n 種作業,然後給出每種作業交作業的截至日期,和完成這項任務需要的時間。如果在截至日期後交作業,那麼每晚一天就要扣一分。求出扣分最少爲多少,並且打印最小扣分完成作業的方案,n <=15。 看一下 n,很小隻有15,最開始想的

原创 POJ-3757: Simple Distributed storage system【簡單01分數規劃(二分)】

Simple Distributed storage system Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 2144   Accepted: 392

原创 十一屆院賽 K題 志願者好萌哇

題意就不說了. 直接考慮dp dp[i][j][k]表示前 i 種物品,選取 j 個使用 k 張優惠券的最小花費。 想一想轉移方程就很明顯了: dp[i][j][k]=min(dp[i-1][j][k],min(dp[i-1][j-1][

原创 CF 55D Beautiful numbers (數位DP入門)

題意是:求 [l,r] 區間內完美數的個數,完美數的定義:這個數能是所有位數的倍數,比如42,42是4的倍數,也是2的倍數。 考慮數位DP, LL dfs(int pos,int now,int lc,int limit) 表示pos爲,

原创 HDOJ 3652 B-number(數位DP入門)

題目求: n以內的是13的倍數,且含有13子串的數的個數。 思考一下這個題: 首先考慮是否含有13,那麼就在DP上加一位sta,表示出現過13這個子串。 再來考慮是13的倍數這個條件: 那麼就再開一維,表示前 i 個數對13的餘數:如果多

原创 十四屆浙江省賽 E題(數位DP)

題意不說了,已經討論過了。 如果知道數位DP的話,那麼這個題就是數位DP的裸題,而且還屬於比較簡單那種...... dp[i][j],表示i位,前i 位的權值和爲 j 這個題有一點要注意的就是前導0也有算花費。 我在DFS中,只有在搜索到

原创 HDOJ 4507 吉哥系列故事——恨7不成妻(數位DP)

題意: 在一定區間內和7無關的數字的平方和。 如果一個整數符合下面3個條件之一,那麼我們就說這個整數和7有關—— 1、整數中某一位是7; 2、整數的每一位加起來的和是7的整數倍; 3、這個整數是7的整數倍; 對於第一個條件:在DP中多

原创 十一屆院賽 I題 我要10個G

題目給出n個點,只有n-1條邊,而且都是連通的,那麼就可以得出是一棵樹。 那就變成了裸的樹剖。 套模板,完事。 #include<stdio.h> #include<algorithm> #include<string> #include

原创 SWJTU oj 2387 Magic Maze(DAG 求最長路)

這個題是給出一個有向無環圖。 那麼就考慮一個DP,dp[i]表示 i 結尾的路徑最大值。 因爲圖是有向無環圖,那麼至少存在一個起點和終點。 對於起點 u 來說:dp[u]=0; 那麼就倒着推,對於一個普通點 u ,可以又 u 的前驅點轉移

原创 HDOJ 2089 不要62(數位DP入門)

題意:求【l,r】區間內有多個數滿足不含62和4. 這個題暴力也可以做因爲範圍比較小。 但是如果數的上限開到1e9或者更大就GG了。 所以學習一種新的DP----數位DP。 也沒學得怎麼樣。 我的理解是:數位DP是按照構造數的方式,然後對

原创 POJ-3013: Big Christmas Tree(dij,spfa)

POJ-3013: Big Christmas Tree 題目鏈接:POJ:3013 Description Christmas is coming to KCM city. Suby the loyal civilian

原创 POJ-2976:Dropping tests【01分數規劃】

Dropping tests Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 12059   Accepted: 4212 Description In a

原创 Intersecting Lines (計算幾何)

題意:給你四個點叫組成兩條直線判斷這兩條直線的關係 模板: #include <iostream> #include <stdio.h> #include <algorithm> #include <math.h> #include <s

原创 Just another Robbery LightOJ - 1079

題意: 有n個銀行要去搶劫,每個銀行有兩個值,一個是銀行的錢,第二個是搶這個銀行被抓住的概率,現在給出搶銀行時的最大忍受的被抓住的概率,求最多能搶多少錢,銀行之間被抓住是獨立事件。 最開始因爲每個概率是兩位小數,那麼就擴大100倍,按照概