Участник:Anirogozina/Problem2

Материал из DISCOPAL
Перейти к: навигация, поиск
#include <iostream>
#include <cmath>
#include <vector>
 
int main()
{
    int n, x, y, sum, res;
    double a;
    int T;
    std::cin >> T;
    std::vector<int> white_balls;
    white_balls.reserve(T);
    for (size_t t = 0; t < T; ++t){
        std::cin >> n;
        std::cin >> x;
        std::cin >> y;
        sum = pow(x, n) + pow(y, n);
        a = pow(sum, 1.0/n);
        res =  (int)round(a);
        if ( sum == pow(res, n) ){
            white_balls.push_back(a);
        }else{
            white_balls.push_back(-1);
        }
    }
    for (auto balls: white_balls){
        if (balls == -1){
            std::cout<<"impossible" << std::endl; 
        }else{
            std::cout << balls << std::endl;
        }
    }
    return 0;
}