D. Roman Digits【打表】

D. Roman Digits

题意:有1,5,10,50四种数字,问用n个数字,能构成多少个不同的数字?

思路:DFS打表观察

#include<bits/stdc++.h>
#define PI acos(-1.0)
#define pb push_back
#define F first
#define S second
using namespace std;
typedef long long ll;
const int N=3e5+5;
const int MOD=1e9+7;
ll a[N]={0,4,10,20,35,56,83,116,155,198,244,292};
ll dir[4]={1,5,10,50};
//ll sum;
//ll ans[N];
set<ll> st;
ll n;

int main(void){
    ios::sync_with_stdio(false);
    cin.tie(0);cout.tie(0);

    ll n;
    cin >>n;
    if(n<=11)   cout << a[n];
    else    cout << a[11]+(n-11)*49;

    return 0;
}

猜你喜欢

转载自blog.csdn.net/haipai1998/article/details/80891175
今日推荐