import java.io.*;
import java.util.*;

// Задача "Оптимизация сепарабельной функции"
// 12-ая Интернет-олимпиада сезона 2006-2007, базовый уровень
// Автор задачи: Федор Царев, tsarev@rain.ifmo.ru
// Автор решения: Максим Буздалов, buzdalov@rain.ifmo.ru

public class optimize_mb {
    static final double EPS = 1e-9;

    public static void main(String[] args) throws IOException {
        Locale.setDefault(Locale.US);
        Scanner in = new Scanner(new File("optimize.in"));
        PrintWriter out = new PrintWriter("optimize.out");

        int n = in.nextInt();
        double[] x = new double[n];
        double ans = 0;
        for (int i = 0; i < n; i++) {
            int a = in.nextInt();
            int b = in.nextInt();
            int p = in.nextInt();
            int q = in.nextInt();
            int r = in.nextInt();

            double l = -q / (2.0 * p);

            double va = p * a * a + q * a + r;
            double vb = p * b * b + q * b + r;
            double vl = (a - EPS < l && l < b + EPS) ? p * l * l + q * l + r : Double.POSITIVE_INFINITY;

            if (va < vb && va < vl) {
                ans += va;
                x[i] = a;
            } else if (vb <= va && vb < vl) {
                ans += vb;
                x[i] = b;
            } else {
                ans += vl;
                x[i] = l;
            }
            System.out.println(va +  " " + vb + " " + vl);
        }
        out.println(ans);
        for (double xi : x) {
            out.print(xi + " ");
        }
        out.close();
        in.close();
    }
}
