首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
AI 模拟面试
简历
求职
学习
基础学习课
实战项目课
求职辅导课
专栏&文章
竞赛
搜索
我要招人
发布职位
发布职位、邀约牛人
更多企业解决方案
AI面试、笔试、校招、雇品
HR免费试用AI面试
最新面试提效必备
登录
/
注册
Lambda_L
获赞
95
粉丝
18
关注
17
看过 TA
115
门头沟学院
2029
C++
IP属地:山东
暂未填写个人简介
私信
关注
拉黑
举报
举报
确定要拉黑Lambda_L吗?
发布(32)
评论
刷题
Lambda_L
关注TA,不错过内容更新
关注
今天 00:06
门头沟学院 C++
题解 | 被打乱的异或和
void solve() { cin>>n; vi a(n+1); for(int i=1;i<=n;i++) { cin>>a[i]; } cout<<a[1]<<endl; }
0
点赞
评论
收藏
分享
02-26 21:50
门头沟学院 C++
额其实没有工作,我还是一个大一牲,但是众所周知,ACMer的训练是不分时间的,我的开工其实就是正经的做题了,怎么说呢,年后的做题状态其实不咋地,感觉自己身上有诸多不足,哎,希望能越来越好
开工第一帖
0
点赞
评论
收藏
分享
02-26 21:46
门头沟学院 C++
大学第一个寒假
OK啊,大学也是成年了,压岁钱是一点都没有的,()但是我亲爱的叔叔居然给了我几百块,OK啊,本来这个寒假都打算吃土了,看来上大学的平时要多攒一攒钱了,
牛友的春节生活
0
点赞
评论
收藏
分享
02-26 17:10
门头沟学院 C++
题解 | 小彩的好数构造
因为只有1,2,3这三个数,所以两个数都要小,想到1000...1,如果n为偶数,设a=1000...1,那么就是b0000+b;会发现后面b的首位一位和前面b的最后一位重合了,也就是说,这俩相加必须<=3,于是我想到1212...这个构造是可以的,那么再来看奇数,同理,也是会相加,但是很明显如果还是用1212..这种数的话,会发现没有3的出现,而且有相邻且相同的数字,所以考虑将2改成3,所有3的位置不会和其他数相加并且成功的使相邻的数不相同,所以结论就很明显了,特判一下n=1,然后n为奇数,就是1000..1,和1313..1,n是偶数就是1000..1,和1212...12。 #in...
0
点赞
评论
收藏
分享
02-23 12:49
门头沟学院 C++
题解 | 小红统计区间(easy)
#include <bits/stdc++.h> using namespace std; #define int long long signed main() { int n, k; cin >> n >> k; vector<int> arr(n + 1, 0); for (int i = 1; i <= n; i++) { cin >> arr[i]; } int l = 1; int sum = 0, ans = 0; for (int r = 1; r <= n; r++) { sum += arr[r]; i...
0
点赞
评论
收藏
分享
02-11 00:50
门头沟学院 C++
题解 | 小苯的序列合并
最终答案一定是某个前缀异或和与对应后缀异或和的按位与。预处理前缀异或数组后,枚举所有分割点,计算 pre[i] & (pre[n]^pre[i]),再与整个数组异或和取最大值,即为答案。时间复杂度 O(n)。代码自己写
0
点赞
评论
收藏
分享
01-25 16:12
门头沟学院 C++
题解 | 【模板】二维差分
#include <bits/stdc++.h> using namespace std; #define endl '\n' using ll = long long; #define int long long #define db double #define itn int #define vi vector<int> #define vs vector<string> #define vvi vector<vector<int>> #define vb vector<bool> #define PII pair&...
0
点赞
评论
收藏
分享
01-25 09:48
门头沟学院 C++
题解 | 好好好数组
分情况讨论基于约束推导合法数组数量:情况 1:m=1要求数组中至少有 1 个不同数字(即所有合法的 “好数组” 都满足)。由于 a_1=0,a_2 可以取 0,1,...,n(共 n+1 个值);对 i≥2,a_{i+1} 由 a_i 唯一确定(满足 a_i = a_{i+1} mod i);因此合法数组数量为 n+1。情况 2:m=2要求数组中至少有 2 个不同数字,需排除 “全 0 数组”(仅 1 个不同数字)。总合法数组数量(m=1)为 n+1,减去全 0 数组(1 个),得 n。情况 3:m=3要求数组中至少有 3 个不同数字,仅存在 1 种合法数组:数组需满足 a_1=0,a_2=1...
0
点赞
评论
收藏
分享
01-09 16:44
门头沟学院 C++
题解 | 合并石头
思路搜索存值,然后去除重复的输出异或值个数即可详细思路看代码注释代码 vi ans;//异或值 vi a;//石头数量 int te[12];//独立的袋子 int cnt = 0;//计算独立袋子数量 void dfs(int u, int cur)//u是处理第u个袋子,cur是当前的异或值 { if (u == n + 1) { ans.push_back(cur);//n个全都遍历完,存值 return; } te[cnt] = a[u];//第一种去向,这个袋子自己作为独立的袋子 cnt++; dfs(u + 1, cur ^ a[u]);//接着搜下一个袋子 cnt--;//回溯 ...
0
点赞
评论
收藏
分享
01-09 16:05
门头沟学院 C++
题解 | 上司的舞会
就是求所有树最高的那棵树的高度 vi adj[M]; vi ind; vi rt; vi h; int ans = 0; void dfs(int u) { for (int v : adj[u]) { h[v] = h[u] + 1; dfs(v); } } void solve() { cin >> n; ind.resize(n + 1, 0); h.resize(n + 1, 0); for (int i = 1; i <= n; i++) { int x; cin >> x; if (x != -1) { adj[x].push_back(i); ind...
0
点赞
评论
收藏
分享
01-07 00:58
已编辑
门头沟学院 C++
题解 | 明日DISCO
思路因为边界永远是 0,而且不能改,所以最终所有数相等的话,只可能等于 0。所以问题转化为:能不能把所有 数变成 0。如果当前是负数,且四个邻居都 >= 0,它可以一直增加到 0如果当前为正数,同理;最后检查是否全为0就行了代码 #include<bits/stdc++.h> using namespace std; #define vi vector<int> int a[505][505]; void solve() { int n; cin >> n; for (int i = 1; i <= n; i++) { for (int j = ...
0
点赞
评论
收藏
分享
01-07 00:50
已编辑
门头沟学院 C++
题解 | 明日DISCO
思路 因为最外围已经全为0且不可以更改,所以想要满足条件只能是所有数全为0; 遍历矩阵,如果一个数能通过操作变为0,那么这个点就满足条件; 如果一个数想变为0,有两种方法,本来就是0,周围四个数和该点异号或为0; 最后只需要判断所有点是否全为0即可; 临时用别人电脑写的,代码很丑,见谅 代码 #include<bits/stdc++.h> using namespace std; #define vi vector<int> int a[505][505]; void solve() { int n; cin >> n; for (...
0
点赞
评论
收藏
分享
01-04 00:40
门头沟学院 C++
题解 | 构造数列
#include <bits/stdc++.h> using namespace std; #define endl '\n' using ll = long long; #define int long long #define db double #define all(a) a.begin(), a.end() const int M = 5e3 + 7; const int mod = 100003; const double pi = acos(-1.0); int n, m, k, h; void solve() { cin >> n; if (n == 2...
0
点赞
评论
收藏
分享
2025-12-26 00:12
门头沟学院 C++
题解 | 小红的圆移动
思路首先需要明确几个关键概念:圆包含原点的判定:若圆心 (x,y) 到原点的距离 d = √(x²+y²) 小于半径 r,则该圆包含原点;否则不包含。移动代价计算:代价 = 圆面积 × 移动距离。圆面积为 πr²,移动距离是让圆不再包含原点所需的最小距离。最小代价策略:对于原本包含原点的圆,若需要让它不包含原点,只需将其向任意方向移动 (r - d) 的距离(这是最小移动距离);对于原本不包含原点的圆,无需移动。要让总代价最小,需遵循 “最小代价优先保留” 原则:先筛选出所有原本包含原点的圆,计算每个圆被移出原点的代价 (r-d)×πr²;将这些代价从大到小排序;保留代价最大的 k 个圆(即不...
0
点赞
评论
收藏
分享
2025-12-24 00:40
门头沟学院 C++
题解 | 秘藏
动态规划定义 dp[i][0] 和 dp[i][1] 两个状态:dp[i][0]:Askalana 到达表世界第 i 号点时,能拥有的最大金币数。dp[i][1]:Askalana 到达里世界第 i 号点时,能拥有的最大金币数。初始化只有初始状态可达:dp[1][0] = a[1](初始在表世界 1 号点,拾取该点金币)。其余状态(如 dp[1][1])初始化为 “不可达”。 #include <bits/stdc++.h> using namespace std; #define endl '\n' using ll = long long; #define all(a) a.b...
0
点赞
评论
收藏
分享
1
2
3
创作者周榜
更多
关注他的用户也关注了:
牛客网
牛客网在线编程
牛客网题解
牛客企业服务