```c++
#include<bits/stdc++.h>
using namespace std;
int dp[1005][1005],r,a[1005][1005];
int main()
{
cin>>r;
for(int i=1;i<=r;i++)
{
for(int j=1;j<=i;j++)
{
cin>>a[i][j];
}
}
dp[1][1]=a[1][1];
for(int i=1;i<=r;i++)
{
for(int j=1;j<=i;j++)
{
if(i!=1 and j!=1)
{
if(j==i)
{
dp[i][j]==dp[i-1][j-1];
}
if(j==1)
{
dp[i][j]==dp[i-1][j];
}
else
{
dp[i][j]=max(dp[i-1][j-1],dp[i-1][j]);
}
}
}
}
cout << dp[r][r];
return 0;
}
```