题解 P1595 【信封问题】

· · 题解

由于这个题的数据比较小,所以可以手推输出。 一点也不暴力。。。
下面附上代码。。。

#include<iostream>
#include<cstdio>
using namespace std;
int main()
{
    int n; cin>>n;
    if(n==1)cout<<0;
    if(n==2)cout<<1;
    if(n==3)cout<<2;
    if(n==4)cout<<9;
    if(n==5)cout<<44;
    if(n==6)cout<<265;
    if(n==7)cout<<1854;
    if(n==8)cout<<14833;
    if(n==9)cout<<133496;
    if(n==10)cout<<1334961;
    if(n==11)cout<<14684570;
    if(n==12)cout<<176214841;
    if(n==13)cout<<2290792932;
    if(n==14)cout<<32071101049;
    if(n==15)cout<<481066515734;
    if(n==16)cout<<7697064251745;
    if(n==17)cout<<130850092279664;
    if(n==18)cout<<2355301661033953;
    if(n==19)cout<<44750731559645106;
    if(n==20)cout<<895014631192902121;
    return 0;
}