构造对称形式的数组的算法,如何利用C语言的程序设计的思路的技术去实现的

Problem Description
Most of the time ,we consider a symmetrical thing is beautiful.Now give you a sequence consisted of some integers . You are asked to use the least number of operations to make it symmetrical.
One operation can be:
1: add a number at the side of sequence.
2: insert a number into two continuous numbers.
3:delete a number.
4: change the value of a number.

Input
A line with a number n (1<=n<=3000) stands for the number of integers in a sequence.
then a line with n integers stand for the n integers one by one .

Output
For each case ,print the number of operations you need at least to make a symmetrical sequence.

Sample Input
5
1 2 2 4 3

Sample Output
2