小W摆石子

小W摆石子


可以确定, 最后围成是 一个长方形 + 多出一列 的形状.
而且多出的那一列应该是和较短的边相邻.
贴代码.

#include<iostream>
#include<algorithm>
using namespace std;
int main()
{
    ios::sync_with_stdio(false);
    #ifndef ONLINE_JUDGE
        freopen("rectangle.in", "r", stdin);
        freopen("rectangle.out", "w", stdout);
    #endif
    int n, m, k;
    cin >> n >> m >> k;
    if(n < m)
        swap(n, m);
    int ans = 0;
    for(int i = 1; i <= m; i ++)
    {
        if(i * n < k)
            continue;
         int h = k / i;
         int _ans = i * (i - 1) * h * (h - 1) / 4;
         int tmp = k - i * h;
         _ans += tmp * (tmp - 1) * h / 2;
         ans = max(ans, _ans);
    }
    cout << ans;
}
原文地址:https://www.cnblogs.com/ZeonfaiHo/p/6402857.html