头条后端编程题 2ac

第一题:

#include <iostream>

#include <vector>

#include <string>

#include <cstdio>

#include <set>

using namespace std;


int main(){

int n, m, c;

cin >> n >> m >> c;

vector<set<int>> vec(c + 1, set<int>());

for (int i = 1; i <= n; i++){

int num_i;

scanf("%d", &num_i);

for (int j = 0; j < num_i; j++){

int x;

scanf("%d", &x);

vec[x].insert(i);

}

}

int cnt = 0;

for (int i = 1; i <= c; i++){

if (vec[i].size() <= 1){

continue;

}

set<int>::iterator it;

vector<int> v;

for (it = vec[i].begin(); it != vec[i].end(); ++it)

v.push_back(*it);

for (int j = 1; j < v.size(); j++){

if (v[j] - v[j - 1] < m){

cnt++;

break;

}

}

}

cout << cnt;

return 0;

}


第二题:

#include <iostream>

#include <vector>

#include <cstdio>

#include <set>

using namespace std;


int main(){

int n;

cin >> n;

int arr[300001];

for (int i = 1; i < n; i++)

scanf("%d", &arr[i]);

int q;

cin >> q;

for (int index = 0; index < q; index++){

int l, r, k;

int cnt = 0;

scanf("%d %d %d", &l, &r, &k);

for (int i = l; i <= r; i++){

if (arr[i] == k)

cnt++;

}

printf("%d", cnt);

}

return 0;

}


全部评论
第二题为啥我的暴力就只有50%
点赞 回复 分享
发布于 2017-09-10 21:19
第二题你暴力接的?
点赞 回复 分享
发布于 2017-09-10 21:20
java暴力解,只有50%,歧视语言
点赞 回复 分享
发布于 2017-09-10 21:24
Go暴力解也是50%
点赞 回复 分享
发布于 2017-09-10 21:38
第一题不应该处理环的尾部和头部相连的那一段也有可能出现m个之内有撞***况的吗
点赞 回复 分享
发布于 2017-09-11 10:03

相关推荐

11-08 17:36
诺瓦科技_HR
点赞 评论 收藏
分享
投票
我要狠拿offer:如果不是必须去成都绝对选九院呀,九院在四川top1研究所了吧
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
昨天 12:19
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务