POJ 3100 Root of the Problem(簡單題)

【題意簡述】:給定整數b和n,求整數a使得a^n最接近b。

【分析】:求b的n次方根,在判斷a和a+1哪個更接近

//180K 0Ms
#include <stdio.h>
#include <math.h>
int main()
{
  double a, b, n;
  while(1)
  {
    scanf("%lf%lf", &b, &n);
    if (n == 0.0 && b == 0.0) break;
    a = (int)(pow (b, 1 / n));     // 積累
    if (fabs(pow(a, n) - b) > fabs(pow(a + 1, n) - b))// 求浮點數的絕對值
    {
       a += 1.0;
    }
    printf("%d\n", (int)(a));
  }
  return 0;
}


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章