# Sum of series with alternate signed squares of AP

We are given the Integer n and also in the next line 2*n integers which represent a Arithmetic Progression series a1, a2, a3…a2n they are in AP. We need to find the sum of a12 – a22 + a32…. + a2n-12 – a2n2 .

Examples :

```Input : n = 2
a[] = {1 2 3 4}
Output : -10
Explanation : 12 - 22 +
32 42 = -10.

Input : n = 3
a[] = {2 4 6 8 10 12}
Output : -84
```

## Recommended: Please try your approach on {IDE} first, before moving on to the solution.

Simple Approach : We one by one find the sum of the square of the series with even terms negative and odd term as positive term .

## C++

 `// CPP program to find sum of  ` `// series with alternate signed  ` `// square AP sums. ` `#include ` `using` `namespace` `std; ` ` `  `// function to calculate series sum ` `int` `seiresSum(``int` `n, ``int` `a[]) ` `{ ` `    ``int` `res = 0; ` `    ``for` `(``int` `i = 0; i < 2 * n; i++)  ` `    ``{ ` `        ``if` `(i % 2 == 0) ` `            ``res += a[i] * a[i]; ` `        ``else` `            ``res -= a[i] * a[i]; ` `    ``} ` `    ``return` `res; ` `} ` ` `  `// Driver Code ` `int` `main() ` `{ ` `    ``int` `n = 2; ` `    ``int` `a[] = { 1, 2, 3, 4 }; ` `    ``cout << seiresSum(n, a); ` `    ``return` `0; ` `} `

## Java

 `// Java program to find sum of  ` `// series with alternate signed  ` `// square AP sums. ` `import` `java.io.*; ` `import` `java.lang.*; ` `import` `java.util.*; ` ` `  `class` `GFG  ` `{ ` ` `  `    ``// function to calculate ` `    ``// series sum ` `    ``static` `int` `seiresSum(``int` `n,  ` `                         ``int``[] a) ` `    ``{ ` `        ``int` `res = ``0``, i; ` `        ``for` `(i = ``0``; i < ``2` `* n; i++)  ` `        ``{ ` `            ``if` `(i % ``2` `== ``0``) ` `                ``res += a[i] * a[i]; ` `            ``else` `                ``res -= a[i] * a[i]; ` `        ``} ` `        ``return` `res; ` `    ``} ` ` `  `    ``// Driver code ` `    ``public` `static` `void` `main(String args[]) ` `    ``{ ` `        ``int` `n = ``2``; ` `        ``int` `a[] = { ``1``, ``2``, ``3``, ``4` `}; ` `        ``System.out.println(seiresSum(n, a)); ` `    ``} ` `} `

## Python3

 `# Python3 program to find sum ` `# of series with alternate signed   ` `# square AP sums. ` ` `  `# Function to calculate series sum ` `def` `seiresSum(n, a): ` `    ``res ``=` `0` `     `  `    ``for` `i ``in` `range``(``0``, ``2` `*` `n): ` `        ``if` `(i ``%` `2` `=``=` `0``): ` `            ``res ``+``=` `a[i] ``*` `a[i] ` `        ``else``: ` `            ``res ``-``=` `a[i] ``*` `a[i] ` `    ``return` `res ` ` `  `# Driver code ` `n ``=` `2` `a ``=` `[``1``, ``2``, ``3``, ``4``] ` `print``(seiresSum(n, a)) ` ` `  `# This code is contributed by Ajit. `

## C#

 `// C# program to find sum of  ` `// series with alternate signed   ` `// square AP sums. ` `using` `System; ` ` `  `class` `GFG  ` `{ ` ` `  `    ``// function to calculate  ` `    ``// series sum ` `    ``static` `int` `seiresSum(``int` `n,  ` `                         ``int``[] a) ` `    ``{ ` `        ``int` `res = 0, i; ` `        ``for` `(i = 0; i < 2 * n; i++)  ` `        ``{ ` `            ``if` `(i % 2 == 0) ` `                ``res += a[i] * a[i]; ` `            ``else` `                ``res -= a[i] * a[i]; ` `        ``} ` `        ``return` `res; ` `    ``} ` ` `  `    ``// Driver code ` `    ``public` `static` `void` `Main() ` `    ``{ ` `        ``int` `n = 2; ` `        ``int` `[]a = { 1, 2, 3, 4 }; ` `        ``Console.WriteLine(seiresSum(n, a)); ` `    ``} ` `} ` ` `  `//This code is contributed by vt_m. `

## PHP

 ` `

Output :

```-10
```

Efficient Approach:Use of Arithmetic progression Application

We know that common difference d = a2 – a1 = a3 – a2 = a4 – a3

Result = a12 – a22 + a32…. + a2n-12 – a2n2

= (a1 – a2)*(a1 + a2) + (a3 – a4)*(a3 +a4)+….+(a2n-1 – a2n)*(a2n-1 + a2n)

So as common difference is common to the series then :
(a1 – a2)[a1 + a2 + a3…a2n]

now we can write :

```(-d)*(Sum of the term of the 2n term of AP)
(-d)*[((2*n)*(a1 + a2n))/2]
now we know that common difference is : d = (a1 - a2)
Then the difference between : g = (a2n - a1)
So we can conclude that g = d*(2*n - 1)
the we ca replace d by : g/(2*n - 1)

So our result becomes : (n/(2*n - 1)) * (a12 - a2n2)
```

## C++

 `// Efficient CPP program to  ` `// find sum of series with  ` `// alternate signed square AP sums. ` `#include ` `using` `namespace` `std; ` ` `  `// function to calculate  ` `// series sum ` `int` `seiresSum(``int` `n, ``int` `a[]) ` `{ ` `    ``return` `n * (a[0] * a[0] - a[2 * n - 1] *  ` `                ``a[2 * n - 1]) / (2 * n - 1); ` `} ` ` `  `// Driver code ` `int` `main() ` `{ ` `    ``int` `n = 2; ` `    ``int` `a[] = { 1, 2, 3, 4 }; ` `    ``cout << seiresSum(n, a); ` `    ``return` `0; ` `} `

## Java

 `// Efficient Java program to   ` `// find sum of series with  ` `// alternate signed square AP sums. ` `import` `java.io.*; ` `import` `java.lang.*; ` `import` `java.util.*; ` ` `  `class` `GFG  ` `{ ` `    ``static` `int` `seiresSum(``int` `n,  ` `                         ``int``[] a) ` `    ``{ ` `    ``return` `n * (a[``0``] * a[``0``] - a[``2` `* n - ``1``] * ` `                ``a[``2` `* n - ``1``]) / (``2` `* n - ``1``); ` `    ``} ` ` `  `    ``// Driver Code ` `    ``public` `static` `void` `main(String args[]) ` `    ``{ ` `        ``int` `n = ``2``; ` `        ``int` `a[] = { ``1``, ``2``, ``3``, ``4` `}; ` `        ``System.out.println(seiresSum(n, a)); ` `    ``} ` `} `

## Python3

 `  `  `# Efficient Python3 program   ` `# to find sum of series with   ` `# alternate signed square AP sums. ` ` `  `# Function to calculate ` `# series sum ` `def` `seiresSum(n, a): ` ` `  `    ``return` `(n ``*` `(a[``0``] ``*` `a[``0``] ``-` `a[``2` `*` `n ``-` `1``] ``*`  `                 ``a[``2` `*` `n ``-` `1``]) ``/` `(``2` `*` `n ``-` `1``)) ` ` `  `# Driver code ` `n ``=` `2` `a ``=` `[``1``, ``2``, ``3``, ``4``]  ` `print``(``int``(seiresSum(n, a))) ` ` `  `# This code is contributed  ` `# by Smitha Dinesh Semwal. `

## C#

 `// Efficient C# program to find sum  ` `// of series with alternate signed  ` `// square AP sums. ` `using` `System; ` ` `  `class` `GFG  ` `{ ` `    ``static` `int` `seiresSum(``int` `n, ``int``[] a) ` `    ``{ ` `    ``return` `n * (a[0] * a[0] - a[2 * n - 1] * ` `                ``a[2 * n - 1]) / (2 * n - 1); ` `    ``} ` ` `  `    ``// Driver Code ` `    ``public` `static` `void` `Main() ` `    ``{ ` `        ``int` `n = 2; ` `        ``int` `[]a= { 1, 2, 3, 4 }; ` `        ``Console.WriteLine(seiresSum(n, a)); ` `    ``} ` `} ` ` `  `// This code is contributed by anuj_67.. `

## PHP

 ` `

Output :

```-10
```

My Personal Notes arrow_drop_up

Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.

Improved By : vt_m

Article Tags :
Practice Tags :

Be the First to upvote.

Please write to us at contribute@geeksforgeeks.org to report any issue with the above content.