最大的表
Description
给定一个
n
∗
n
n*n
n∗n 的矩阵,令
a
i
,
j
a_{i,j}
ai,j为矩阵中第
i
i
i行第
j
j
j列的元素,则有:
1、
a
k
,
1
=
a
1
,
k
=
1
(
1
≤
k
≤
N
)
a_{k,1}=a_{1,k}=1(1≤k≤N)
ak,1=a1,k=1(1≤k≤N)
2、
a
i
,
j
=
a
i
−
1
,
j
+
a
i
,
j
−
1
(
2
≤
i
,
j
≤
N
)
a_{i,j}=a_{i-1,j}+a_{i,j-1}(2≤i,j≤N)
ai,j=ai−1,j+ai,j−1(2≤i,j≤N)
现请求出该矩阵中最大元素的值。
Format
Input
输入一个 n n n
Output
输出最大值
Samples
输入数据 1
5
输出数据 1
70
Constraints
对于 50 % 50\% 50%的数据, 1 ≤ n ≤ 10 1\leq n \leq 10 1≤n≤10
对于 100 % 100\% 100%的数据, 1 ≤ n ≤ 30 1\leq n \leq 30 1≤n≤30
题解
#include <bits/stdc++.h>
using namespace std;
#define ll long long
ll a[100][100],i,j,k,maxx=0;
int main()
{
ios::sync_with_stdio(false);
cin.tie(0);
int n;
cin>>n;
for(ll k=1;k<=n;k++){
a[k][1]=1;
a[1][k]=1;
}
for(ll i=2;i<=n;i++){
for(ll j=2;j<=n;j++){
a[i][j]=a[i-1][j]+a[i][j-1];
}
}
for(ll i=1;i<=n;i++){
for(ll j=1;j<=n;j++){
if(a[i][j]>maxx) maxx=a[i][j];
}
}
cout<<maxx;
return 0;
}