题目链接:1319 - Maximum
同这篇:http://blog.csdn.net/accelerator_/article/details/10204243
代码:
#include <stdio.h>
#include <string.h>
#include <math.h>
int m, p, a, b;
int num1, num2;
int main() {
while (~scanf("%d%d%d%d", &m, &p, &a, &b)) {
int sum = a * b; num1 = num2 = 0;
for (int i = 0; i < m - 1; i++) {
if (sum < a) {
sum++;
num2++;
}
else {
sum -= a;
num1++;
}
}
double ans = num2 * pow(1.0 / sqrt(a), p) + num1 * pow(sqrt(a), p) + pow(sum * (1.0 / sqrt(a)), p);
printf("%d\n", (int)(ans + 0.5));
}
return 0;
}