首页 > 字节4.13笔试第四题 楼顶数楼问题
头像
Mario大叔叔👨
发布于 2020-04-15 23:54
+ 关注

字节4.13笔试第四题 楼顶数楼问题



#include <iostream>
#include <vector>
using namespace std;
 
void getRes(vector<int> &heights, vector<int> &res, int len)
{
    int j, cnt;
    for (int i = 0; i < len; ++i)
    {
        cnt = 0;
        j = i - 1;
        while (j >= 0)
        {
            if (heights[j] <= heights[i])
                ++cnt;
            else
                break;
            --j;
        }
        j = i + 1;
        while (j < len)
        {
            if (heights[j] <= heights[i])
                ++cnt;
            else
                break;
            ++j;
        }
        res.push_back(cnt);
    }
}
 
int main()
{
    int t, n, temp;
    vector<int> heights;
    vector<int> res;
 
    cin >> t;
    for (int i = 0; i < t; ++i)
    {
        cin >> n;
        heights.clear();
        res.clear();
        for (int j = 0; j < n; ++j)
        {
            cin >> temp;
            heights.push_back(temp);
        }
        getRes(heights, res, n);
 
        int k;
        for (k = 0; k < (res.size() - 1); ++k)
            cout << res[k] << " ";
        cout << res[k] << endl;
    }
 
    system("pause");
    return 0;
}
只会用暴力解,而且只过了71%的用例,求求大佬们给个思路。

全部评论

(4) 回帖
加载中...
话题 回帖

相关热帖

历年真题 真题热练榜 24小时
技术(软件)/信息技术类
查看全部

近期精华帖

热门推荐