/* * @Author: hesorchen * @Date: 2020-07-03 17:05:01 * @LastEditTime: 2020-07-26 14:48:01 * @Description: https://hesorchen.github.io/ */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; #define endl '\n' #define PI acos(-1) #define PB push_back #define ll long long #define INF 0x3f3f3f3f #define mod 1000000007 #define pll pair #define lowbit(abcd) (abcd & (-abcd)) #define max(a, b) ((a > b) ? (a) : (b)) #define min(a, b) ((a < b) ? (a) : (b)) #define IOS \ ios::sync_with_stdio(false); \ cin.tie(0); \ cout.tie(0); #define FRE \ { \ freopen("in.txt", "r", stdin); \ freopen("out.txt", "w", stdout); \ } inline ll read() { ll x = 0, f = 1; char ch = getchar(); while (ch < '0' || ch > '9') { if (ch == '-') f = -1; ch = getchar(); } while (ch >= '0' && ch <= '9') { x = (x << 1) + (x << 3) + (ch ^ 48); ch = getchar(); } return x * f; } //head============================================================================== ll f(ll n) { if (n == 1 || n == 0) return 0; return (n - 1) + (n - 2) + f(n - 2); } int main() { IOS; ll t; cin >> t; while (t--) { ll n, m; cin >> n >> m; ll temp = (n - 1) * n / 2; if (m >= n / 2) { cout << temp << endl; continue; } ll temp2 = (n - 1 + n - 2 * m) * (n - 1 - n + 2 * m + 1) / 2; // cout << temp << ' ' << temp2 << endl; cout << min(temp, temp2) << endl; // cout << f(n) << endl; } return 0; } /* */