#include <bits/stdc++.h>
double discriminant(double a, double b, double c) { return b * b - 4 * a * c; }
void distinct(double a, double b, double c) {
  double x1, x2;
  double k = sqrt(discriminant(a, b, c));
  x1 = (-b + k) / (2 * a);
  x2 = (-b - k) / (2 * a);
  printf("%.5f\n", x1);
  printf("%.5f\n", x2);
}
void Double(double a, double b) { printf("%.5f\n", -b / (2 * a)); }
void noA(double b, double c) { printf("%.5f\n", -c / b); }
int main() {
  double a, b, c;
  scanf("%f%f%f", &a, &b, &c);
  if (discriminant(a, b, c) == 0) {
    printf("%d\n", 1);
    Double(a, b);
  } else if (discriminant(a, b, c) > 0) {
    printf("%d\n", 2);
    distinct(a, b, c);
  } else if (a == 0 && b == 0 && c == 0)
    printf("%d\n", -1);
  else if (a == 0) {
    printf("%d\n", 1);
    noA(b, c);
  } else
    printf("\n", 0);
  return 0;
}
