/* -*- coding: utf-8 -*- * * 915.cc: No.915 Plus Or Multiple Operation - yukicoder */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; /* constant */ /* typedef */ typedef long long ll; /* global variables */ /* subroutines */ /* main */ int main() { int q; scanf("%d", &q); while (q--) { int a, b, c; scanf("%d%d%d", &a, &b, &c); if (c == 1) puts("-1"); else { ll cc = (ll)c * c; int cnt = 0; while (a > 0) { if (a >= c && a <= (c - 1) * 2) cnt += 2, a = 0; else { if (a % c > 0) cnt++; a /= c; if (a > 0) cnt++; } } printf("%lld\n", (ll)cnt * b); } } return 0; }