提交时间:2023-08-09 17:49:31

运行 ID: 81651

#include<bits/stdc++.h> using namespace std; long long n,t,c3[11000],c2[11000],c1[11000]; long long hd3(long long n){ long long ans=2; for(int i=1;i<=n;i++)c3[i]=i+1; c2[1]=2; for(int i=2;i<=n;i++)c2[i]=c2[i-1]+c3[i-1]; c1[1]=2; for(int i=2;i<=n;i++)c1[i]=c1[i-1]+c2[i-1]; for(int i=1;i<n;i++)ans+=c1[i]; return ans; } int main(){ cin>>t>>n; switch(t){ case 1:{ cout<<(n-1)*n/2; break; } case 2:{ cout<<n*(n-1)/2*(n-2)/3*(n-3)/4; break; } default:{ cout<<hd3(n-1); break; } } return 0; }