Problem:
Score : 100 points

Problem Statement

It has been decided that a programming contest sponsored by company A will be held, so we will post the notice on a bulletin board.

The bulletin board is in the form of a grid with N rows and N columns, and the notice will occupy a rectangular region with H rows and W columns.

How many ways are there to choose where to put the notice so that it completely covers exactly HW squares?

Constraints

1 \leq H, W \leq N \leq 100

All values in input are integers.

Input

Input is given from Standard Input in the following format:

N
H
W

Output

Print the answer.

Sample Input 1

3
2
3

Sample Output 1

2

There are two ways to put the notice, as follows:

### ...
### ###
... ###

Here, # represents a square covered by the notice, and . represents a square not covered.

Sample Input 2

100
1
1

Sample Output 2

10000

Sample Input 3

5
4
2

Sample Output 3

8

Solution in Java8 (OpenJDK 1.8.0) (judge verdict: Runtime Error)

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class Main {
	public int findWay(int[][] mat,int N,int C,int R,int count,int rI,int cI) {
  		if(rI > N-R ) {
			if(cI < N-C) {
				cI++;
				return findWay(mat, N, C, R, count,0, cI);
			}
			else {
				return count;
			}
		}
		if(rI <= N-C) {
			rI++;
		}else {
			rI = 0;
		}
		count++;
		return findWay(mat, N, C, R, count, rI, cI);
	}
	public static void main(String[] args) throws NumberFormatException, IOException {	
		Main ac = new Main();
		int count = 0;
		int N,R=4,C;
		int cI,rI;
		cI = 0;
		rI = 0;
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		N = Integer.parseInt(br.readLine());
		R = Integer.parseInt(br.readLine());
      	C = Integer.parseInt(br.readLine());
		int mat[][] = new int[N][N];
		System.out.println(ac.findWay(mat, N, C, R, count, rI, cI));
	}
}