#include <iostream>
#include <iomanip>
#include <algorithm>

int main() {
    int a, b, c;
    std::cin >> a >> b >> c;
    int sides[3] = {a, b, c};
    std::sort(sides, sides + 3);

    if (sides[0] * sides[0] + sides[1] * sides[1] == sides[2] * sides[2]) {
        double area = static_cast<double>(sides[0] * sides[1]) / 2;
        std::cout << std::fixed << std::setprecision(1) << area << std::endl;
    } else {
        std::cout << "No" << std::endl;
    }

    return 0;
}    
/**************************************************************
	Problem: 1047
	User: fuyijun
	Language: C++
	Result: Accepted
	Time:10 ms
	Memory:2076 kb
****************************************************************/