Problem:
Score : 100 points

Problem Statement

N of us are going on a trip, by train or taxi.

The train will cost each of us A yen (the currency of Japan).

The taxi will cost us a total of B yen.

How much is our minimum total travel expense?

Constraints

All values in input are integers.

1 \leq N \leq 20

1 \leq A \leq 50

1 \leq B \leq 50

Input

Input is given from Standard Input in the following format:

N A B

Output

Print an integer representing the minimum total travel expense.

Sample Input 1

4 2 9

Sample Output 1

8

The train will cost us 4 \times 2 = 8 yen, and the taxi will cost us 9 yen, so the minimum total travel expense is 8 yen.

Sample Input 2

4 2 7

Sample Output 2

7

Sample Input 3

4 2 8

Sample Output 3

8

Solution in Rust (1.15.1) (judge verdict: Accepted)

use std::io;
use std::str;

// fn printnum(x: i32){
//     println!("{}", x);
// }

// fn sum(x: i32, y: i32) -> i32{
//     x + y
// }

fn readnum() -> i32{
    let mut x = String::new();
    io::stdin().read_line(&mut x).expect("read_line error");
    let x = x.trim().parse().expect("parse error");
    x
}

fn readstr() -> String{
    let mut x = String::new();
    io::stdin().read_line(&mut x).expect("read_line error");
    x
}

fn readnumvec() -> Vec<i32> {
    let mut s = String::new();
    io::stdin().read_line(&mut s).ok();
    let mut s: Vec<&str> = s.split_whitespace().collect();
    let mut v: Vec<i32> = vec![];
    for i in (0..s.len()) {
        v.push(s[i].trim().parse().expect("parse error"));
    }
    v
}

fn main() {
    let mut v = readnumvec();
    println!("{}", if v[0]*v[1]<v[2] {v[0]*v[1]} else { v[2] });
}