![img](https://img-mid.csdnimg.cn/release/static/image/mid/ask/8d329854c3ff4f86b4ceb26b3f283bd3.png "#left")
家人们,我的代码哪里有问题啊,为什么答案算不对
```c
int dp[1000][1000]; //dp[i]表示以第i个数结尾的公差为j的最长等差子序列的长度
int longestArithSeqLength(int* nums, int numsSize) {
int i,j,max=2,demp;
memset(dp,1,sizeof(dp));
for(i=1;i<numsSize;i++)
{
dp[i][nums[i]-nums[0]+500]=2;
for(j=0;j<i;j++)
{
demp=nums[i]-nums[j]+500;
if(dp[i][demp]<dp[j][demp]+1)
dp[i][demp]=dp[j][demp]+1;
if(dp[i][demp]>max)
max=dp[i][demp];
}
}
return max;
}
```