-3
所以我需要在C++程序中确定最长的顺序回文。这里是一个例子v =(3,4,1,5,2,5,1,8,9,6)向我展示5并记住第一个1和最后一个1这种情况的位置。Palindromic vector sequential
#include<iostream>
using namespace std;
int main(){
int v[100],n,i,j,max=0,maxi=0,maxj=0,cni,cnj,l;
cin>>n;
for(i=0;i<n;i++)
cin>>v[i];
cnj=n-1;
cni=0;
while(j!=0)
{
for(i=0;i<j;i++)
{
if(v[i]==v[j])
{
l=j-i;
if(max<j-i)
{
max=j-i;
maxi=i;
maxj=j;
}
j--;
}
else
j=cnj;
}
j--;
cnj=j;
}
while(i!=n-1)
{
for(j=n;j>i;j--)
{
if(v[i]==v[j])
{
if(max<j-i)
{
max=j-i;
maxi=i;
maxj=j;
}
i++;
}
else
i=cni;
}
i++;
cni=i;
}
cout<<maxi<<" "<<maxj;
return 0;
}
当我运行它的代码块它停止工作
其中乌尔尝试 – Raindrop7
我想在这样的事情..(代码是在问题)。 – Michael
@迈克尔它如何不具体工作? –