题目:
分析:等差数列问题,我选择枚举差值。公差为0-。。的情况下,求解最值。
easy,代码又有问题,找不出来。o(╥﹏╥)o。
代码:
#include<bits/stdc++.h>
using namespace std
;
int main()
{
vector
<int> A
;
int B
[20005];
int maxx
=-1,minn
=1000000;
for(int i
=0;i
<A
.size();i
++)
{
maxx
=max(maxx
,A
[i
]);
minn
=min(minn
,A
[i
]);
}q
int t
=maxx
-minn
;
int ans
=0;
for(int i
=0;i
<=t
;i
++)
{
memset(B
,0,sizeof(B
));
for(int j
=0;j
<A
.size();j
++)
{
if(A
[j
]-i
>=0)
{
B
[A
[j
]]=max(B
[A
[j
]],1+B
[A
[j
]-i
]);
ans
=max(ans
,B
[A
[j
]]);
}
}
}
for(int i
=0;i
<=t
;i
++)
{
memset(B
,0,sizeof(B
));
for(int j
=0;j
<A
.size();j
++)
{
{
B
[A
[j
]]=max(B
[A
[j
]],1+B
[A
[j
]+i
]);
ans
=max(ans
,B
[A
[j
]]);
}
}
}
return ans
;
}
转载请注明原文地址:https://blackberry.8miu.com/read-13248.html