#include<stdio.h>
#include<stdlib.h>
typedef struct lnode
{
int data;
struct lnode *next;
}lnode,*linklist;
linklist creat(linklist L,int a[],int n)
{
lnode *p,*r;
r=L;
for(int i=0;i<n;i++)
{
p=(lnode *)malloc(sizeof(lnode));
p->data=a[i];
r->next=p;
r=p;
}
r->next=NULL;
return L;
}
int dc(linklist L,int n)
{
int i;
int b[n/2];
lnode *p=L->next;
for(i=0;i<n/2;i++)
{
b[i]=p->data;
p=p->next;
}
if(n%2==1)
{
p=p->next;
}
while(p->next!=NULL)
{
if(p->data=b[i])
{
i--;
p=p->next;
}
}
if(i==-1)
return 1;
else
return 0;
}
int main()
{
linklist L=(lnode *)malloc(sizeof(lnode));
L->next=NULL;
int a[]={1,2,3,2,1};
L=creat(L,a,5);
if(int i=dc(L,5))
printf("%d\n",i);
return 0;
}