Problem:
Score : 100 points

Problem Statement

We conducted a survey on newspaper subscriptions.
More specifically, we asked each of the N respondents the following two questions:

Question 1: Are you subscribing to Newspaper X?

Question 2: Are you subscribing to Newspaper Y?

As the result, A respondents answered "yes" to Question 1, and B respondents answered "yes" to Question 2.

What are the maximum possible number and the minimum possible number of respondents subscribing to both newspapers X and Y?

Write a program to answer this question.

Constraints

1 \leq N \leq 100

0 \leq A \leq N

0 \leq B \leq N

All values in input are integers.

Input

Input is given from Standard Input in the following format:

N A B

Output

Print the maximum possible number and the minimum possible number of respondents subscribing to both newspapers, in this order, with a space in between.

Sample Input 1

10 3 5

Sample Output 1

3 0

In this sample, out of the 10 respondents, 3 answered they are subscribing to Newspaper X, and 5 answered they are subscribing to Newspaper Y.

Here, the number of respondents subscribing to both newspapers is at most 3 and at least 0.

Sample Input 2

10 7 5

Sample Output 2

5 2

In this sample, out of the 10 respondents, 7 answered they are subscribing to Newspaper X, and 5 answered they are subscribing to Newspaper Y.

Here, the number of respondents subscribing to both newspapers is at most 5 and at least 2.

Sample Input 3

100 100 100

Sample Output 3

100 100

Solution in PHP (5.6.30) (judge verdict: Wrong Answer)

<?php

$a = [];
$b = [];
$c = [];
fscanf(STDIN, "%d", $n);
for ($i = 0; $i < $n; $i++) {
    fscanf(STDIN, "%d %d", $a[$i], $b[$i]);
    $c[$i] = $a[$i] - $b[$i];
}


array_multisort($c, SORT_DESC, $a, SORT_DESC, $b, SORT_ASC);

$max_diff = 0;
$a_turn = true;
for ($j = 0; $j < $n; $j++) {
    if ($a_turn) {
        $max_diff += eat($a, $b, $a_turn, a_should_eat($a));
    } else {
        $max_diff -= eat($a, $b, $a_turn, b_should_eat($c, $b));
    }
}

function eat(&$a, &$b, &$a_turn, $pos)
{
    $res = $a_turn ? $a[$pos] : $b[$pos];

    $a[$pos] = 0;
    $b[$pos] = 0;
    $a_turn = $a_turn ? false : true;
    return $res;
}

function a_should_eat($a)
{
    for ($j = 0; $j < count($a); $j++) {
        if ($a[$j]) {
            return $j;
        }
    }
}

function b_should_eat($c, $b)
{
    for ($j = count($c) - 1; $j > 0; $j--) {
        if ($b[$j - 1] == 0 || ($b[$j] && $c[$j] != $c[$j - 1])) {
            return $j;
        }
    }
    return $j;
}

echo $max_diff;

function print_arrays(...$arrs)
{
    foreach ($arrs as $arr) {
        print_array($arr);
    }
}
function print_array($arr)
{
    foreach ($arr as $k => $e) {
        echo "$e ";
    }
    echo "\n";
}