1 99
9 20 20 20 20 20 20 20 20 20
30%的数据中,a<=b<=10^6;
100%的数据中,a<=b<=10^12。
题目大概:
题目很精简。
思路:
做一个结构题存储所有的0到9的数的个数,并储存现在位的个数。
每次统计是把现在位的个数储存,并把以前存储的数字的数量一起进行赋值。
这个题主要是统计10位数,麻烦一点。
代码:
#include<cstdio>
#include<string>
#include<cstring>
#include<iostream>
using namespace std;
typedef long long ll;
int a[22];
struct DP
{
ll wei[10],sum;
DP(){memset(wei,0,sizeof(wei));}
DP(ll su):sum(su){memset(wei,0,sizeof(wei));}
}dp[20][2],ans[2];
DP sove(int pos,int lead,int limit)
{
if(pos==-1)return DP(1);
if(!limit&&~