#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; int div1(int a, int b) { return (a + b - 1) / b; } int maxRounds(int a1H, int a1a, int a2H, int a2a) { if (a1H <= 0 || a2H <= 0) return 0; return min(div1(a1H, a2a), div1(a2H, a1a)); } int solve(int a1, int a2, int a3) { // (a1, a2) (a1, a3) (a2, a3) int h1 = 1000, h2 = 1000, h3 = 1000; int m1 = maxRounds(h1, a1, h2, a2); int best = 100000; for (int rmi = 0; rmi <= m1; rmi++) { h1 -= a2 * rmi; h2 -= a1 * rmi; int m2 = maxRounds(h1, a1, h3, a3); for (int rmj = 0; rmj <= m2; rmj++) { h1 -= a3 * rmj; h3 -= a1 * rmj; int m3 = maxRounds(h2, a2, h3, a3); h2 -= a3 * m3; h3 -= a2 * m3; int c = 0; if (h1 <= 0) c++; if (h2 <= 0) c++; if (h3 <= 0) c++; if (c >= 2) best = min(best, rmi + rmj + m3); h2 += a3 * m3; h3 += a2 * m3; h1 += a3 * rmj; h3 += a1 * rmj; } h1 += a2 * rmi; h2 += a1 * rmi; } return best; } int main(){ ios_base::sync_with_stdio(0); cin.tie(0); int t; cin >> t; int a1, a2, a3; while (t--) { cin >> a1 >> a2 >> a3; int best = 100000; best = min(best, solve(a1, a2, a3)); best = min(best, solve(a1, a3, a2)); best = min(best, solve(a2, a1, a3)); best = min(best, solve(a2, a3, a1)); best = min(best, solve(a3, a1, a2)); best = min(best, solve(a3, a2, a1)); cout << best << "\n"; } }