#include <stdio.h>
#include <math.h>
int a, b, c;
double out(double x) {
double g = x, sum = 0;
for (int i = 0; i < c; i++) {
sum += b / x;
x *= g;
}
sum -= a;
return sum;
}
int main () {
scanf("%d %d %d", &a, &b, &c);
double l = 0, r = 1000;
while (abs(l - r) > 0.00001) {
double m = (l + r) / 2;
if (out(r)*out(l) < 0) {
if (out(l)*out(m) < 0)r = m;
if (out(r)*out(m) < 0)l = m;
} else if (out(r) == 0) {
printf("%.1lf", (r - 1) * 100);
break;
} else if (out(l) == 0) {
printf("%.1lf", (l - 1) * 100);
break;
} else if (out(m) == 0) {
printf("%.1lf", (m - 1) * 100);
break;
}
}
printf("%.1lf", (l-1) * 100);
return 0;
}
求帮看看,为啥全超时了