标签:
c/c++中好像没有直接计算任意底数对数的函数,函数log(a)只能计算自然对数log2(a);
若要计算对数log(b)a,可以通过数学里面的换底公式完成,log(b)a=log(c)a/log(c)b,令c=2,得:log(b)a=log(a)/log(b);
1 #include <bits/stdc++.h>
2 #define ll long long
3 using namespace std;
4
5 int main(void)
6 {
7 int t;
8 cin >> t;
9 while(t--)
10 {
11 int a, b;
12 cin >> a >> b;
13 int x=ceil(log(a)/log(b)); //***计算对数long b(a)
14 cout << x << endl;
15 }
16 return 0;
17 }
标签:
原文地址:http://www.cnblogs.com/geloutingyu/p/5936182.html