第四题:
#include<iostream>
#include<vector>
#include<algorithm>
#include<ctime>
using namespace std;

int main()
{
    clock_t startTime, endTime;
    startTime = clock();
    int N, M, k;
    cin >> N >> M >> k;
    if (N <= 0 || M <= 0)
    {
        return 0;
    }
    vector<int> arr;
    int ss = (int)sqrt(k);
    //cout << ss;
    int nIndex = N;
    int mIndex = M;
    if (k > N*M || N <= 0 || M <= 0)
    {
        return 0;
    }
    if (N == M)
    {
        int judge = k - 1;
        while (judge)
        {
            if (nIndex == mIndex && nIndex >= 1 && mIndex >= 1)
            {
                nIndex--;
                mIndex = M;
                --judge;
            }
            else if (nIndex < mIndex && nIndex >= 1 && mIndex >= 1)
            {
                if (judge>1)
                {
                    judge = judge - 2;
                    mIndex--;
                }
                else if (judge == 1)
                {
                    --judge;
                }
            }
        }
        cout << nIndex*mIndex <<endl;
    }
    if (N < M)
    {
        int judge = k - 1;
        while (judge)
        {
            if (nIndex < mIndex && mIndex > N && mIndex >= 1 && nIndex >= 1)
            {
                --judge;
                --mIndex;
            }
            else if (nIndex < mIndex && mIndex <= N && mIndex >= 1 && nIndex >= 1)
            {
                if (judge > 1)
                {
                    judge = judge - 2;
                    --mIndex;
                }
                else if (judge == 1)
                {
                    --judge;
                }
            }
            else if (nIndex == mIndex)
            {
                --nIndex;
                mIndex = M;
                --judge;
            }
        }
        cout << nIndex*mIndex <<endl;
    }
    if (N>M)
    {
        int judge = k - 1;
        while (judge)
        {
            if (nIndex == mIndex && mIndex >= 1 && nIndex >= 1)
            {
                --mIndex;
                nIndex = N;
                --judge;
            }
            else if (mIndex < nIndex && nIndex > M && mIndex >= 1 && nIndex >= 1)
            {
                --judge;
                --nIndex;
            }
            else if (mIndex < nIndex && nIndex <= M && mIndex >= 1 && nIndex >= 1)
            {
                if (judge > 1)
                {
                    judge = judge - 2;
                    --nIndex;
                }
                else if (judge == 1)
                {
                    --judge;
                }
            }
        }
        cout << nIndex*mIndex<<endl;
    }
    endTime = clock();
    cout << "运行时间:" << endTime - startTime << "ms"<< endl;

    system("pause");
    return 0;
}