#include<stdio.h>
int t,n,a[110][110],i,j,k,l,m,n,p,visited[100][100];
max(int a,int b)
{
return (a>b)?a:b;
}
int solve(int i,int j)
{
int t1,t2,q;
if(i>n)
return 0;
if(visited[i][j]!=0)
return visited[i][j];
t1=solve(i+1,j);
t2=solve(i+1,j+1);
q=max(t1,t2)+a[i][j];
visited[i][j]=q;
return q;
}
int main()
{
while(t--)
{
for(i=1;i<=n;i++)
{
for(j=1;j<=i;j++)
visited[i][j]=0;
}
for(i=1;i<=n;i++)
{
for(j=1;j<=i;j++)
}
p=solve(1,1);
}
return 0;
}
I2luY2x1ZGU8c3RkaW8uaD4KaW50IHQsbixhWzExMF1bMTEwXSxpLGosayxsLG0sbixwLHZpc2l0ZWRbMTAwXVsxMDBdOwptYXgoaW50IGEsaW50IGIpCnsKICAgIHJldHVybiAoYT5iKT9hOmI7Cn0KaW50IHNvbHZlKGludCBpLGludCBqKQp7CiAgICBpbnQgdDEsdDIscTsKaWYoaT5uKQogICAgcmV0dXJuIDA7CmlmKHZpc2l0ZWRbaV1bal0hPTApCiAgICByZXR1cm4gdmlzaXRlZFtpXVtqXTsKCiAgICB0MT1zb2x2ZShpKzEsaik7CiAgICB0Mj1zb2x2ZShpKzEsaisxKTsKICAgIHE9bWF4KHQxLHQyKSthW2ldW2pdOwogICAgdmlzaXRlZFtpXVtqXT1xOwogICAgcmV0dXJuIHE7Cgp9CmludCBtYWluKCkKewogICAgc2NhbmYoIiVkIiwmdCk7CiAgICB3aGlsZSh0LS0pCiAgICB7CiAgICAgICAgZm9yKGk9MTtpPD1uO2krKykKICAgICAgICB7CiAgICAgICAgICAgIGZvcihqPTE7ajw9aTtqKyspCiAgICAgICAgICAgICAgICB2aXNpdGVkW2ldW2pdPTA7CiAgICAgICAgfQoKICAgICAgICBzY2FuZigiJWQiLCZuKTsKICAgICAgICBmb3IoaT0xO2k8PW47aSsrKQogICAgICAgIHsKICAgICAgICAgICAgZm9yKGo9MTtqPD1pO2orKykKICAgICAgICAgICAgICAgIHNjYW5mKCIlZCIsJmFbaV1bal0pOwoKICAgICAgICB9CiAgICAgICBwPXNvbHZlKDEsMSk7CiAgICAgICBwcmludGYoIiVkXG4iLHApOwogICAgfQogICAgcmV0dXJuIDA7Cn0K