今日头条编程题
第二题查询喜爱度,暴力只能过50%。
自己改进以后得方法如下,本地可以运行,但是提交以后一直报段错误,求大神指导错在哪。。
如果最大喜爱度为k,有n个用户,空间复杂度为O(k*n),是因为空间复杂度太大吗?
#include<iostream>
#include<vector>
#include<algorithm>
using namespace std;
int main()
{
int n;
cin >> n;
vector<int>like(n+1, 0);
for (int i = 1; i <= n; i++) cin >> like[i];//n个人
int maxlike = *max_element(like.begin(), like.end());
vector<vector<int>>vec(maxlike+1, vector<int>(n+1,0));
for (int i = 1; i <= n; i++) {
for (int j = i; j <= n; j++) {
vec[like[i]][j]++;
}
}
int q;
cin >> q;
for (int i = 0; i < q; i++) {
int l, r, k;
cin >> l >> r >> k;
cout << vec[k][r]-vec[k][l-1] << endl;
}
return 0;
}
莉莉丝游戏公司福利 614人发布
