目录
个人总结
C/C++ 组真题
握手问题
小球反弹
好数
R 格式
宝石组合
数字接龙
爬山
拔河
编辑
再总结及后续规划
个人总结
第一次参加蓝桥杯,大二,以前都在在学技术,没有系统的学过算法。所以,还是花了挺多时间去备战的,因为暑假想找实习,就想拿个奖写简历上。备战了大概一个多月,学了一些基础的算法(dfs bfs 动态规划为主),刷了快200道题吧,但还是因为缺少经验,比赛时有点茫然了,然后大概率是寄了。
C/C++ 组真题
握手问题
这道第一题相对于去年还算是比较简单,排列 + 特殊情况处理即可
(50 * 49) / 2 - (6*7) / 2 = 1204,答案应该是正确的
小球反弹
这个应该是错了哈哈,答案是 1100325199.77,但和这个值挺像的,可惜只看答案。
前两道题都是数学问题,唉,后悔没有静下心来看第二题了。
好数
这道题直接暴力模拟即可,数据量没有很大。
#include using namespace std; int N; int main() { cin >> N; int Count = 0; // 记录总个数 for (int i = 1; i 0) { int end = n % 10; if (flag == 1) { if (end % 2 == 0) { ret = 0; break; } flag = 0; } else // flag = 0 { if (end % 2 != 0) { ret = 0; break; } flag = 1; } n /= 10; } if (ret == 1) Count++; } cout n >> d; cout > N; for (long long i = 1; i > nums[i]; unordered_map hash; for (long long i = 2; i = 1; j--) hash[nums[i] * nums[j]] = { j, i }; } long long ret[3] = {100010, 100010, 100010}; long long S = 0; for (long long i = 1; i S) { S = tmp; ret[0] = nums[i]; ret[1] = nums[e.second.first]; ret[2] = nums[e.second.second]; } else if (tmp == S) { if (ret[0] > nums[i]) { ret[0] = nums[i]; ret[1] = nums[e.second.first]; ret[2] = nums[e.second.second]; } else if (nums[i] == ret[0] && ret[1] > nums[e.second.first]) { ret[0] = nums[i]; ret[1] = nums[e.second.first]; ret[2] = nums[e.second.second]; } else if (nums[i] == ret[0] && ret[1] == nums[e.second.first] && ret[2] > nums[e.second.second]) { ret[0] = nums[i]; ret[1] = nums[e.second.first]; ret[2] = nums[e.second.second]; } } } } } cout
文章版权声明:除非注明,否则均为VPS857原创文章,转载或复制请以超链接形式并注明出处。
还没有评论,来说两句吧...