D. Roman Digits【打表】
阿新 • • 發佈:2018-12-24
題意:有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; }