import java.io.BufferedReader; import java.io.InputStreamReader; import java.math.BigDecimal; public class Main { public static void main(String[] args) throws Exception { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); String[] sa = br.readLine().split(" "); long a = Integer.parseInt(sa[0]); long b = Integer.parseInt(sa[1]); long c = Integer.parseInt(sa[2]); br.close(); if (a == 0) { if (b == 0) { if (c == 0) { System.out.println(-1); } else { System.out.println(0); } } else { System.out.println(1); System.out.println((double) -c / b); } } else if (b * b == 4 * a * c) { System.out.println(1); System.out.println((double) -b / 2 / a); } else if (b * b > 4 * a * c) { long d = b * b - 4 * a * c; BigDecimal bd = BigDecimal.valueOf(d); long e = (long) Math.sqrt(d); if (e * e > d) { e--; } BigDecimal sq = BigDecimal.valueOf(e); StringBuilder sb = new StringBuilder("0."); for (int i = 0; i < 20; i++) { for (int j = 0; j < 10; j++) { BigDecimal v = new BigDecimal(sb.toString() + "1"); BigDecimal tmp = sq.add(v); tmp = tmp.multiply(tmp); if (tmp.compareTo(bd) > 0) { break; } sq = sq.add(v); } sb.append("0"); } System.out.println(2); BigDecimal ba = BigDecimal.valueOf(a); BigDecimal two = BigDecimal.valueOf(2); BigDecimal mb = BigDecimal.valueOf(b).negate(); BigDecimal ans1 = mb.subtract(sq).divide(two).divide(ba, 20, BigDecimal.ROUND_HALF_UP); BigDecimal ans2 = mb.add(sq).divide(two).divide(ba, 20, BigDecimal.ROUND_HALF_UP); if (ans1.compareTo(ans2) < 0) { System.out.println(ans1.toPlainString()); System.out.println(ans2.toPlainString()); } else { System.out.println(ans2.toPlainString()); System.out.println(ans1.toPlainString()); } } else { System.out.println(0); } } }