#define _CRT_SECURE_NO_WARNINGS #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; typedef string::const_iterator State; #define Ma_PI 3.141592653589793 #define eps 1e-5 #define LONG_INF 1000000000000000000LL #define GOLD 1.61803398874989484820458 #define MAX_MOD 1000000007LL #define GYAKU 500000004LL #define MOD 998244353LL #define seg_size 262144*4 #define REP(a,b) for(long long a = 0;a < b;++a) int main() { int query; cin >> query; REP(i, query) { long long a, b; cin >> a >> b; if (b == 1) { cout << a-1 << endl; } else { long long geko = 1; for (long long i = 1;; ++i) { a -= geko; geko *= b; if (a <= 0) { cout << i-1 << endl; break; } } } } }