糖逗 发表于 2020-5-11 13:02:56

C++刷笔试题(完美的序列)【双指针】【网易】【2020】

本帖最后由 糖逗 于 2020-5-12 13:17 编辑

题目描述:如图1(题目整理自牛客网)



#include<vector>
#include<iostream>
using namespace std;

vector<int> solution(vector<vector<int> >&input){
    vector<int> res;
    for(int i = 0; i < input.size(); i++){
      int left = 0;
      int sum = 0;
      int len = 0;
      for(int j = 0; j < input.size()-1; j++){
            sum += input;
            if(sum > input){
                len = max(len, j- left+1);
                left = j+1;
                sum = 0;   
            }
      }
      if(len == 0) len = input.size();
      res.push_back(len);
    }
    return res;
}

int main(){
    int a;
    cin >> a;
    vector<vector<int> > input;
    for(int i = 0; i < a; i++){
      int b;
      cin >> b;
      vector<int> temp;
      int number;
      for(int i = 0; i < b; i++){
            cin >> number;
            temp.push_back(number);
      }
      input.push_back(temp);
    }
    vector<int> res = solution(input);
    for(auto cha : res) cout << cha << endl;
    return 0;
}
页: [1]
查看完整版本: C++刷笔试题(完美的序列)【双指针】【网易】【2020】