如何获取温度连续最高的城市的指数?

时间:2018-12-20 17:18:18

标签: indexing max

我大约需要18天才能完成决赛,所以我需要完成此作业。 大约有N个城市和M天,得出一个N * M多维数组。 我必须将降序的城市编号还给控制台。 如何按降序返回索引?

我曾经尝试过这段代码,但是每次都不会把它还给我。

local my_c_functions = require("test")
print(my_c_functions.c_add(42, 42))

有输入:

#include <iostream>

using namespace std;

int main()
{
    int i,j;
    int city,days;
    cin >> city >> days;
    int maxert=0;
    int maxi[city];
    int data[city][days];
    int hmuch[city];
    int help[days];
    for (i = 0; i < city; i++)
    {
        maxi[i]=0;
    }
    for (i = 0; i < days; i++)
    {
        help[i]=0;
    }
    for (i = 0; i < city; i++)
    {
        hmuch[i]=0;
    }
    for (i = 0; i < city; i++)
    {
        for (j = 0; j < days; j++)
        {
            cin >> data[i][j];
        }
    }
    for (i = 0; i < days; i++)
    {
        for (j = 0; j < city; j++)
        {
            if (data[j][i] >= maxert)
            {
                maxert=data[j][i];
                help[i] = maxert;
            }
        }
    }
    for (i = 0; i < days; i++)
    {
        for (j = 0; j < city; j++)
        {
            if (help[i] == data[j][i])
            {
                hmuch[j]=hmuch[j]+1;
            }
        }
    }
    maxert = 0;
    for (i = 0; i < days; i++)
    {
        if (hmuch[i] >= maxert)
        {
            maxert = hmuch[i];
        }
    }
    for (i = 0; i < days; i++)
    {
        if (maxert == hmuch[i])
        {
            maxi[0] = i;
        }
        else
        {
            maxi[i]=i;
        }
    }
    for (i = 0; i < city; i++)
    {
        cout << maxi[i] << " ";
    }
}

输出必须为:     2 3 1

但是我得到的是:     3 1 2

0 个答案:

没有答案