Problem:
MathJax.Hub.Config({ tex2jax: { inlineMath: [["$","$"], ["\\(","\\)"]], processEscapes: true }});

Distance II

Your task is to calculate the distance between two $n$ dimensional vectors $x = \{x_1, x_2, ..., x_n\}$ and $y = \{y_1, y_2, ..., y_n\}$.

The Minkowski's distance defined below is a metric which is a generalization of both the Manhattan distance and the Euclidean distance.

\[
D_{xy} = (\sum_{i=1}^n |x_i - y_i|^p)^{\frac{1}{p}}
\]

It can be the Manhattan distance

\[
D_{xy} = |x_1 - y_1| + |x_2 - y_2| + ... + |x_n - y_n|
\]

where $p = 1 $.

It can be the Euclidean distance

\[
D_{xy} = \sqrt{(|x_1 - y_1|)^{2} + (|x_2 - y_2|)^{2} + ... + (|x_n - y_n|)^{2}}
\]

where $p = 2 $.

Also, it can be the Chebyshev distance

\[
D_{xy} = max_{i=1}^n (|x_i - y_i|)
\]

where $p = \infty$

Write a program which reads two $n$ dimensional vectors $x$ and $y$, and calculates Minkowski's distance where $p = 1, 2, 3, \infty$ respectively.

Input

In the first line, an integer $n$ is given. In the second and third line, $x = \{x_1, x_2, ... x_n\}$ and $y = \{y_1, y_2, ... y_n\}$ are given respectively. The elements in $x$ and $y$ are given in integers.

Output

Print the distance where $p = 1, 2, 3$ and $\infty$ in a line respectively.
The output should not contain an absolute error greater than 10-5.

Constraints

$1 \leq n \leq 100$

$0 \leq x_i, y_i \leq 1000$

Sample Input

3
1 2 3
2 0 4

Sample Output

4.000000
2.449490
2.154435
2.000000

Solution in JAVA (judge verdict: Wrong Answer)

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

public class Main {

	public static void main(String[] args) throws IOException {

		BufferedReader input = new BufferedReader(new InputStreamReader(System.in));

		String first_line = input.readLine();

		// ??´??°n
		int num_n = Integer.parseInt(first_line);

		String secound_line = input.readLine();

		// 2???????????\???
		String[] vector_x_array = secound_line.split(" ");

		String third_line = input.readLine();

		// 3???????????\???
		String[] vector_y_array = third_line.split(" ");

		double p_first = 0;

		double p_secound_square = 0;

		double p_third_squar = 0;

		double p_secound = 0;

		for (int array_spot = 0; array_spot < num_n; array_spot++) {

			double vector_x = Double.parseDouble(vector_x_array[array_spot]);

			double vector_y = Double.parseDouble(vector_y_array[array_spot]);

			if (vector_x < vector_y) {

				double tum = vector_x;

				vector_x = vector_y;

				vector_y = tum;
			}

			p_first += vector_x - vector_y;

			p_secound_square += Math.pow(vector_x - vector_y, 2);

			p_third_squar+=Math.pow(vector_x - vector_y, 3);
		}

		System.out.println(p_first);

		p_secound=Math.sqrt(p_secound_square);


		double p_third=Math.cbrt(p_third_squar);

		System.out.println(p_secound);

		System.out.println(p_third);

		System.out.println(p_first/2);
	}

}