很裸的一道數字dp的板子
定義f[當前列舉到的數字][當前數字之前的答案][列舉的數字]
其它的套板子就可以了,要注意一下字首0的判斷
1 #include2 #include3 #include4 #include5 #include6 #include7view codeusing
namespace
std;
8 typedef long
long
ll;9 ll f[20][20][20],num[30
];10
ll a,b;
11ll asd(ll now,ll tot,ll ask,ll jud,ll zer)
15if(f[now][tot][ask]!=-1 && jud==0 &&(ask || !zer))
18 ll mmax=9;19
if(jud==1) mmax=num[now];
20 ll anss=0;21
for(ll i=0;i<=mmax;i++)
24if(!jud && (ask || !zer)) f[now][tot][ask]=anss;
25return
anss;26}
27ll solve(ll xx,ll ask)
35return asd(cnt-1,0,ask,1,1
);36}37
intmain()
44 printf("\n"
);45
return0;
46 }
P2602 ZJOI2010 數字計數
題目描述 給定兩個正整數a和b,求在 a,b 中的所有整數中,每個數碼 digit 各出現了多少次。輸入格式 輸入檔案中僅包含一行兩個整數a b,含義如上所述。輸出格式 輸出檔案中包含一行10個整數,分別表示0 9在 a,b 現了多少次。輸入輸出樣例 輸入 1 1 99 輸出 1 9 20 20 2...
P2602 ZJOI2010 數字計數
p2602 題目描述 給定兩個正整數 a 和 b,求在 a,b 中的所有整數中,每個數碼 digit 各出現了多少次。輸入格式 僅包含一行兩個整數 a,b,含義如上所述。輸出格式 包含一行十個整數,分別表示 0 9 在 a,b 現了多少次。1 99 9 20 20 20 20 20 20 20 20...
洛谷p2602 數字計數
題目描述 給定兩個正整數a和b,求在 a,b 中的所有整數中,每個數碼 digit 各出現了多少次 一開始想歪了,想去列舉每一位,然後統計每一位的情況。轉念一想,數字dp是統計 a,b 內符合條件的數字的個數。換一種方法,對key 0,9 統計含1個key,2個key len len為數字的長度 個...