- import java.io.OutputStream;
- import java.io.IOException;
- import java.io.InputStream;
- import java.io.PrintWriter;
- import java.util.InputMismatchException;
- import java.io.IOException;
- import java.io.InputStream;
-
- /**
- * Built using CHelper plug-in
- * Actual solution is at the top
- */
- public class Main {
- public static void main(String[] args) {
- InputStream inputStream = System.in;
- OutputStream outputStream = System.out;
- MyScan in = new MyScan(inputStream);
- PrintWriter out = new PrintWriter(outputStream);
- SpecialShop solver = new SpecialShop();
- int testCount = Integer.parseInt(in.next());
- for (int i = 1; i <= testCount; i++)
- solver.solve(i, in, out);
- out.close();
- }
-
- static class SpecialShop {
- public void solve(int testNumber, MyScan in, PrintWriter out) {
- int n = in.nextInt();
- int a = in.nextInt();
- int b = in.nextInt();
-
-
- out.println(s(n, a, b));
-
- }
-
- private long s(long n, long a, long b) {
- long f1 = n * b / (a + b);
-
-
- return Math.min(k(n, a, b, f1), k(n, a, b, f1 + 1));
- }
-
- private long k(long n, long a, long b, long ind) {
- return a * ind * ind + b * (n - ind) * (n - ind);
- }
-
- }
-
- static class MyScan {
- private final InputStream in;
- private byte[] inbuf = new byte[1024];
- public int lenbuf = 0;
- public int ptrbuf = 0;
-
- public MyScan(InputStream in) {
- this.in = in;
- }
-
- private int readByte() {
- if (lenbuf == -1) throw new InputMismatchException();
- if (ptrbuf >= lenbuf) {
- ptrbuf = 0;
- try {
- lenbuf = in.read(inbuf);
- } catch (IOException e) {
- throw new InputMismatchException();
- }
- if (lenbuf <= 0) return -1;
- }
- return inbuf[ptrbuf++];
- }
-
- public boolean isSpaceChar(int c) {
- return !(c >= 33 && c <= 126);
- }
-
- public int skip() {
- int b;
- while ((b = readByte()) != -1 && isSpaceChar(b)) ;
- return b;
- }
-
- public String next() {
- int b = skip();
- StringBuilder sb = new StringBuilder();
- while (!(isSpaceChar(b))) {
- sb.appendCodePoint(b);
- b = readByte();
- }
- return sb.toString();
- }
-
- public int nextInt() {
- int num = 0, b;
- boolean minus = false;
- while ((b = readByte()) != -1 && !((b >= '0' && b <= '9') || b == '-')) ;
- if (b == '-') {
- minus = true;
- b = readByte();
- }
-
- while (true) {
- if (b >= '0' && b <= '9') {
- num = num * 10 + (b - '0');
- } else {
- return minus ? -num : num;
- }
- b = readByte();
- }
- }
-
- }
- }
-
Language: Java 8