D. Roman Digits

等差递推的打表,11项后公差相等

#include<bits/stdc++.h>//以一种相对固定的模式扩展,数字很明显超过时间复杂度,很可能是打表规律题 
using namespace std;//打表程序 
set<long long> st;
int num[4]={1,5,10,50};
void dfs(int step,long long index)
{
    if(step==0)
    {
      st.insert(index);
      return;
    }
    for(int i=0;i<=3;i++)
    {
        dfs(step-1,index+num[i]);
    }
}
int main()
{
    for(int i=1;i<=60;i++)
    {
        st.clear();
        dfs(i,0);
        printf("i:%d %d\n",i,st.size());
    }
}

猜你喜欢

转载自www.cnblogs.com/lishengkangshidatiancai/p/10343149.html