关注
第一题 #include<cstdio> #include<list> using namespace std; typedef struct Vertex { list<int> houji; }Vertex; bool fetched[100020]; Vertex v[100020]; int routine[100020]; int maxLayer = 0; int bfs(int start, int layer) { if (layer > maxLayer) maxLayer = layer; fetched[start] = true; routine[start] = 0; for (auto it = v[start].houji.begin(); it != v[start].houji.end(); it++) { int no = *it; routine[start] += bfs(no, layer+1); } routine[start] += v[start].houji.size() * 2; return routine[start]; } int main() { int n; scanf("%d", &n); for (int i = 0; i < n-1; i++) { int from, to; scanf("%d %d", &from, &to); v[from].houji.push_back(to); } bfs(1, 0); printf("%d", routine[1] - maxLayer); return 0; } 第二题 #include<cstdio>
#include<unordered_map>
#include<list>
using namespace std;
int a[100040];
unordered_map<int, int> state;
unordered_map<int, int> moreThanTNum;
int writeState(int *a, int idx, int k, int t) { unordered_map<int, int> digitNum; for (int i = idx; i < idx + k; i++) { int digit = a[i]; if (digitNum.find(digit) == digitNum.end()) { digitNum[digit] = 1; } else { digitNum[digit]++; } } moreThanTNum[idx] = 0; for (auto it = digitNum.begin(); it != digitNum.end(); it++) { state[it->first] = it->second; if (it->second >= t) { moreThanTNum[idx]++; } } return 0;
}
int main() { int n, k, t; scanf("%d %d %d", &n, &k, &t); for (int i = 0; i < n; i++) { scanf("%d", &a[i]); } int result = 0; writeState(a, 0, k, t); if (moreThanTNum[0] >= t) { result++; } for (int idx = 1; idx <= n - k; idx++) { int deleteDigit = a[idx - 1]; int addDigit = a[idx + k - 1]; state[deleteDigit]--; if (state[deleteDigit] == t - 1) { moreThanTNum[idx] = moreThanTNum[idx - 1] - 1; } else { moreThanTNum[idx] = moreThanTNum[idx - 1]; } if (state.find(addDigit) == state.end()) { state[addDigit] = 1; } else { state[addDigit]++; } if (state[addDigit] == t) { moreThanTNum[idx] = moreThanTNum[idx] + 1; } if (moreThanTNum[idx] >= 1) { result++; } } printf("%d\n", result); return 0;
}
第二题O(n)的解法一直不对,直到交卷两分钟后找出来了bug……
查看原帖
点赞 评论
相关推荐
点赞 评论 收藏
分享
查看1道真题和解析 点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 你小心翼翼的闯过多大的祸? #
3911次浏览 68人参与
# 找不到实习会影响秋招吗 #
1399772次浏览 13635人参与
# 实习没事做是福还是祸? #
4235次浏览 68人参与
# 重来一次,你会对开始求职的自己说 #
925次浏览 19人参与
# 2025年终总结 #
134295次浏览 2293人参与
# 考研人,我有话说 #
156582次浏览 1211人参与
# 哪些公司笔/面试难度大? #
7062次浏览 32人参与
# 实习简历求拷打 #
24003次浏览 249人参与
# 你觉得现在还能进互联网吗? #
29952次浏览 201人参与
# 携程工作体验 #
18945次浏览 66人参与
# 大厂VS公务员你怎么选 #
69134次浏览 638人参与
# 扒一扒那些奇葩实习经历 #
140169次浏览 1149人参与
# 找不到好工作选择GAP真的丢人吗 #
93692次浏览 1007人参与
# 那些我实习了才知道的事 #
253085次浏览 1785人参与
# 非技术投递记录 #
672911次浏览 6820人参与
# 机械求职避坑tips #
81070次浏览 531人参与
# 投格力的你,拿到offer了吗? #
154919次浏览 829人参与
# 第一份工作能做外包吗? #
94054次浏览 599人参与
# 作业帮求职进展汇总 #
85454次浏览 559人参与
# 秋招遇到的奇葩面试题 #
101255次浏览 416人参与

