8 条题解
-
-1
#include <iostream> #include<string.h> using namespace std; const int maxn=500; int c[maxn][maxn][101]; int ans[maxn]; void add(int x[],int y[],int z[]){ z[0]=max(x[0],y[0])+1; for(int i=1;i<=z[0];i++){ z[i]+=(x[i]+y[i]); z[i+1]+=z[i]/10; z[i]%=10; } while(z[0]>1&&z[z[0]]==0)z[0]--; return; } int main() { int i,j,n,m; cin>>i>>j>>n>>m; int s=max(i,n); c[0][0][0]=c[1][0][0]=c[1][1][0]=1; c[0][0][1]=c[1][0][1]=c[1][1][1]=1; for(int a=2;a<=s;a++){ c[a][0][0]=c[a][a][0]=1; c[a][0][1]=c[a][a][1]=1; for(int b=1;b<a;b++){ add(c[a-1][b-1],c[a-1][b],c[a][b]); } } add(c[i][j],c[n][m],ans); for(int i=ans[0];i>=1;i--)cout<<ans[i]; return 0; }
-
-1
#include <bits/stdc++.h> using namespace std; int main() { unsigned long long int a[510][510]; unsigned long long int i,j,n,m,sum=0; cin>>i>>j>>n>>m;
for (int i=0;i<=499;i++) { for (int j=0;j<=i;j++) { if (j==0||j==i) { a[i][j]=1; continue; } a[i][j]=a[i-1][j-1]+a[i-1][j]; } }
// for (int i=0;i<=499;i++) // { // for (int j=0;j<=i;j++) // { // cout<<a[i][j]<<" "; // } // cout<<endl; // } sum=a[i][j]+a[n][m]; cout<<sum;
return 0;
}
-
-1
杨辉三角
#include<bits/stdc++.h> using namespace std; long long a[502][502]; int main() { long long i,j,n,m; cin>>i>>j>>n>>m; a[0][0]=1; a[1][0]=1; a[1][1]=1; for(int o=2;o<502;o++) { a[o][0]=1; a[o][o]=1; for(int p=1;p<o;p++) { a[o][p]=a[o-1][p-1]+a[o-1][p]; } } cout<<a[i][j]+a[n][m]; }
-
-1
#include <bits/stdc++.h> using namespace std; int n,a,na,b,c,m,ma,num,i,x,y; long long location[1000][1000]; long long TnT; int im,jm,nm,mm; int main(){ y=1; while(y<=505){ x=1; while(x<=y){ if(x==1||x==y) num=1; else num=location[x-1][y-1]+location[x][y-1]; location[x][y]=num; x++; } y++; } cin>>im>>jm>>nm>>mm; TnT=location[jm+1][im+1]+location[mm+1][nm+1]; cout<<TnT; return 0; }
-
-1
C++ :
#include <iostream> #include <cstdio> #include <sstream> #include <algorithm> #define Maxn 1009 using namespace std; int so[Maxn];int n=0; int main() { int a,b,c,d; scanf("%d %d %d %d",&a,&b,&c,&d); int ans1,ans2,ans3; int n1=1,m1=1,n2=1; for(int i=1;i<=a;i++){ n1= n1*i; } for(int i=1;i<=b;i++){ m1= m1*i; } int r; r=a-b; for(int i=1;i<=r;i++){ n2= n2*i; } int c1; c1=n1/(m1*n2); int n3=1,m2=1,n4=1; for(int i=1;i<=c;i++){ n3=n3*i; } for(int i=1;i<=d;i++){ m2=m2*i; } int x; x=c-d; for(int i=1;i<=x;i++){ n4=n4*i; } int c2; c2=n3/(m2*n4); ans1=c1+c2; printf("%d",ans1); return 0; }
- 1
信息
- ID
- 100
- 时间
- 1000ms
- 内存
- 128MiB
- 难度
- 9
- 标签
- 递交数
- 802
- 已通过
- 81
- 上传者