https://user.qzone.qq.com/50222268/blog/1501818558
#include <cstdio>
#include <fstream>
#include <cstring>
#include <algorithm>
using namespace std;
const int maxSize=100;
int c,n;
int a[maxSize+5][maxSize+5],f[maxSize+5][maxSize+5];
void dp()
{
int i,j;
for (i=n-1;i>0;i--)
{
for (j=1;j<=i;j++)
{
f[i][j]=max(f[i+1][j],f[i+1][j+1])+a[i][j];
}
}
printf("%d\n",f[1][1]);
}
int main()
{
int i,j,k;
freopen("a.txt","r",stdin);
scanf("%d",&c);
for (i=0;i<c;i++)
{
scanf("%d",&n);
for (j=1;j<=n;j++)
{
for (k=1;k<=j;k++)
{
scanf("%d",&a[j][k]);
if (j==n)
f[j][k]=a[j][k];
else
f[j][k]=0;
}
}
dp();
}
return 0;
}
#include <cstdio>
#include <fstream>
#include <cstring>
using namespace std;
const int maxSize=55;
int f[maxSize+5],n;
void dp()
{
int i;
for (i=4;i<=n;i++)
{
f[i]=f[i-3]+f[i-1];
}
printf("%d\n",f[n]);
}
int main()
{
int i;
freopen("a.txt","r",stdin);
while (1)
{
scanf("%d",&n);
memset(f,0,sizeof(f));
f[1]=1; f[2]=2; f[3]=3;
if (n==0)
break;
dp();
}
return 0;
}
48万+

被折叠的 条评论
为什么被折叠?



