2024 睿抗机器人开发者大赛CAIP-编程技能赛-本科组(省赛)

RC-u1 热҈热҈热҈

  1. #include<bits/stdc++.h>
  2. using namespace std;
  3. using i64 = long long;
  4. int main() {
  5. ios::sync_with_stdio(false);
  6. cin.tie(nullptr);
  7. int n,w;
  8. cin >> n >> w;
  9. int ans1 = 0, ans2 = 0;
  10. for(int i = 0;i < n;i ++){
  11. int x;
  12. cin >> x;
  13. if(x >= 35){
  14. if(w == 4) ans2 ++;
  15. else ans1 ++;
  16. }
  17. w ++;
  18. if(w > 7) w = 1;
  19. }
  20. cout << ans1 << ' ' << ans2 << '\n';
  21. return 0;
  22. }

RC-u2 谁进线下了?

  1. #include<bits/stdc++.h>
  2. using namespace std;
  3. using i64 = long long;
  4. int level(int x){
  5. if(x == 1) return 12;
  6. if(x == 2) return 9;
  7. if(x == 3) return 7;
  8. if(x == 4) return 5;
  9. if(x == 5) return 4;
  10. if(x <= 7) return 3;
  11. if(x <= 10) return 2;
  12. if(x <= 15) return 1;
  13. return 0;
  14. }
  15. int main() {
  16. ios::sync_with_stdio(false);
  17. cin.tie(nullptr);
  18. int n;
  19. cin >> n;
  20. vector<int> a(20);
  21. for(int i = 0;i < n;i ++){
  22. for(int j = 0;j < 20;j ++){
  23. int c,p;
  24. cin >> c >> p;
  25. a[j] += level(c) + p;
  26. }
  27. }
  28. for(int i = 0;i < 20;i ++){
  29. cout << i + 1 << ' ' << a[i] << '\n';
  30. }
  31. return 0;
  32. }

RC-u3 暖炉与水豚

思路

标记暖气周围,当一只水豚周围没有暖气时,说明它周围都有可能是隐藏的暖气,但是要注意判断不在冷水豚的周围。

  1. #include<bits/stdc++.h>
  2. using namespace std;
  3. using i64 = long long;
  4. int main() {
  5. ios::sync_with_stdio(false);
  6. cin.tie(nullptr);
  7. int n, m;
  8. cin >> n >> m;
  9. vector<string> s(n);
  10. for (auto &i : s)
  11. cin >> i;
  12. vector st(n, vector<int>(m));
  13. const int u[] = {1, 1, 1, -1, -1, -1, 0, 0};
  14. const int v[] = {1, 0, -1, 1, 0, -1, 1, -1};
  15. for (int i = 0; i < n; i ++)
  16. for (int j = 0; j < m; j ++)
  17. if (s[i][j] == 'm') {
  18. st[i][j] = 1;
  19. for (int k = 0; k < 8; k ++) {
  20. int x = i + u[k], y = j + v[k];
  21. if (x >= 0 && x < n && y >= 0 && y < m)
  22. st[x][y] = 1;
  23. }
  24. }
  25. for (int i = 0; i < n; i ++)
  26. for (int j = 0; j < m; j ++)
  27. if (s[i][j] == 'c') {
  28. st[i][j] = 2;
  29. for (int k = 0; k < 8; k ++) {
  30. int x = i + u[k], y = j + v[k];
  31. if (x >= 0 && x < n && y >= 0 && y < m)
  32. st[x][y] = 2;
  33. }
  34. }
  35. vector<array<int, 2>> ans;
  36. for (int i = 0; i < n; i ++)
  37. for (int j = 0; j < m; j ++)
  38. if (s[i][j] == 'w' && st[i][j] == 0) {
  39. for (int k = 0; k < 8; k ++) {
  40. int x = i + u[k], y = j + v[k];
  41. if (x >= 0 && x < n && y >= 0 && y < m && s[x][y] == '.' && st[x][y] != 2)
  42. ans.push_back({x + 1, y + 1});
  43. }
  44. }
  45. sort(ans.begin(), ans.end());
  46. if (ans.empty()) cout << "Too cold!\n";
  47. else
  48. for (auto &[x, y] : ans)
  49. cout << x << ' ' << y << '\n';
  50. return 0;
  51. }

RC-u4 章鱼图的判断

思路

dfs 判环是否只有一个,用个时间戳记录一下环的个数即可。

  1. #include<bits/stdc++.h>
  2. using namespace std;
  3. using i64 = long long;
  4. int main() {
  5. ios::sync_with_stdio(false);
  6. cin.tie(nullptr);
  7. int t;
  8. cin >> t;
  9. while (t--) {
  10. int n, m;
  11. cin >> n >> m;
  12. vector g(n + 1, vector<int>());
  13. for (int i = 0; i < m; i ++) {
  14. int u, v;
  15. cin >> u >> v;
  16. g[u].push_back(v);
  17. g[v].push_back(u);
  18. }
  19. int ans = 0, cnt = 0, huan = 0;
  20. vector<int> vis(n + 1);
  21. auto dfs = [&](auto & self, int u, int fa, int num)->void{
  22. vis[u] = num;
  23. for (auto v : g[u]) {
  24. if (v == fa) continue;
  25. if (vis[v]) {
  26. cnt ++;
  27. ans = max(ans, num - vis[v] + 1);
  28. } else
  29. self(self, v, u, num + 1);
  30. }
  31. };
  32. for (int i = 1; i <= n; i ++) {
  33. cnt = 0;
  34. if (!vis[i]) {
  35. dfs(dfs, i, 0, 1);
  36. huan += (cnt / 2 == 1);
  37. }
  38. }
  39. if (huan == 1 && n > 2) {
  40. cout << "Yes" << ' ' << ans << '\n';
  41. } else {
  42. cout << "No" << ' ' << huan << '\n';
  43. }
  44. }
  45. return 0;
  46. }

RC-u5 工作安排

思路

按截至日期排个序,然后就是典型的 01 背包。

  1. #include<bits/stdc++.h>
  2. using namespace std;
  3. using i64 = long long;
  4. struct node{
  5. int t,d,p;
  6. };
  7. int main() {
  8. ios::sync_with_stdio(false);
  9. cin.tie(nullptr);
  10. int t;
  11. cin >> t;
  12. while (t--) {
  13. int n;
  14. cin >> n;
  15. vector<node> a(n);
  16. for(auto &i : a)
  17. cin >> i.t >> i.d >> i.p;
  18. sort(a.begin(),a.end(),[](node x,node y){
  19. return x.d < y.d;
  20. });
  21. const int N = 5000;
  22. vector<i64> dp(N + 10,INT_MIN);
  23. dp[0] = 0;
  24. for(int i = 0;i < n;i ++){
  25. for(int j = a[i].d;j>=a[i].t;j--)
  26. dp[j] = max(dp[j],dp[j-a[i].t]+a[i].p);
  27. }
  28. i64 ans = 0;
  29. for(int i = 0;i <= N;i ++)
  30. ans = max(ans,dp[i]);
  31. cout << ans << '\n';
  32. }
  33. return 0;
  34. }

2024 睿抗机器人开发者大赛CAIP-编程技能赛-本科组(省赛)的更多相关文章

  1. 2015游戏蛮牛——蛮牛杯第四届开发者大赛 创见VR未来开启报名

    蛮牛杯启动了,大家开始报名! http://cup.manew.com/ 这不是一篇普通的通稿,别着急忽略它.它是一篇可以让你梦想变现的通稿! 从某一天开始,游戏蛮牛就立志要为开发者服务,我们深知这一 ...

  2. 国内第一本micropython的书出版《机器人Python极客编程入门与实战》

    第一本micropython的书<机器人Python极客编程入门与实战>. 购买地址:https://item.taobao.com/item.htm?spm=2013.1.w4018-1 ...

  3. 2014年spark开发者大赛火热进行中!

    “发现最有正能量的网络达人”,Spark开发者大赛火热进行! 2014年9月30日,2014 Spark开发者大赛在北京正式启动.本次大赛由Spark亚太研究院联合国内领先的IT技术创新与发展的互联网 ...

  4. 这里有40条提升编程技能小妙招!还有TIOBE 7月份的编程语言排行榜

    如何提高编程技能?恐怕很多开发者思考过这个问题.最近,拥有将近 15 年开发经验的软件工程师 Kesk -*- 写了一篇博客,列举了 40 条对其职业生涯有所帮助的事项.   或许,通过以下 40 个 ...

  5. 那些在GitHub能提高你的编程技能的项目

    1.免费的编程书籍 免费的开发手册 167K Repo:github.com/EbookFoundation/free-programming.. 2. 很棒的话题 包含了各种有趣的话题 148k R ...

  6. 现代Web应用开发者必备的六大技能

    过去,应用开发需要注重大量的专业知识,程序员只需关注单一的语言(比如COBOL.RPG.C++等),并利用该语言创建应用.而如今,时代在变迁.Web不再是单单关注独立的一面.相反,一个现代化的Web应 ...

  7. 给 JavaScript 开发者讲讲函数式编程

    本文译自:Functional Programming for JavaScript People 和大多数人一样,我在几个月前听到了很多关于函数式编程的东西,不过并没有更深入的了解.于我而言,可能只 ...

  8. 开发者大赛 | aelf轻型DApp开发训练大赛结果公布!

    6月9日,由aelf基金会发起的轻型DApp开发训练大赛圆满收官.本次训练赛基于aelf公开测试网展开,主要针对轻型DApp,旨在激励更多的开发者参与到aelf生态中来. 活动于4月21日上线后,ae ...

  9. 2018百度之星开发者大赛-paddlepaddle学习(二)将数据保存为recordio文件并读取

    paddlepaddle将数据保存为recordio文件并读取 因为有时候一次性将数据加载到内存中有可能太大,所以我们可以选择将数据转换成标准格式recordio文件并读取供我们的网络利用,接下来记录 ...

  10. 2018百度之星开发者大赛-paddlepaddle学习

    前言 本次比赛赛题是进行人流密度的估计,因为之前看过很多人体姿态估计和目标检测的论文,隐约感觉到可以用到这次比赛上来,所以趁着现在时间比较多,赶紧报名参加了一下比赛,比赛规定用paddlepaddle ...

随机推荐

  1. Flash驱动控制--芯片擦除(SPI协议)

    摘要: 本篇博客具体包括SPI协议的基本原理.模式选择以及时序逻辑要求,采用FPGA(EPCE4),通过SPI通信协议,对flash(W25Q16BV)存储的固化程序进行芯片擦除操作. 关键词:SPI ...

  2. PhantomReference 和 WeakReference 究竟有何不同

    本文基于 OpenJDK17 进行讨论,垃圾回收器为 ZGC. 提示: 为了方便大家索引,特将在上篇文章 <以 ZGC 为例,谈一谈 JVM 是如何实现 Reference 语义的> 中讨 ...

  3. Python优雅遍历字典删除元素的方法

    在Python中,直接遍历字典并在遍历过程中删除元素可能会导致运行时错误,因为字典在迭代时并不支持修改其大小.但是,我们可以通过一些方法间接地达到这个目的. 1.方法一:字典推导式创建新字典(推荐) ...

  4. 2>&1解释

    场景 /root/test.sh > runoob.log 2>&1 那2>&1是什么意思? 解释 将标准错误 2 重定向到标准输出 &1 ,标准输出 &am ...

  5. spark中各窗口函数对于窗口的要求

    窗口参数: class WindowSpec private[sql]( partitionSpec: Seq[Expression], orderSpec: Seq[SortOrder], fram ...

  6. Netty(三)Netty模型

    1. Netty模型 Netty主要基于主从Reactor多线程模型做了一定的改进,其中主从Reactor多线程模型有多个Reactor. 简版图: 说明: BossGroup线程维护Selector ...

  7. 基于OMAPL138+FPGA核心板——MCSDK开发入门(下)

    本文测试板卡为创龙科技 SOM-TL138F 是一款基于 TI OMAP-L138(定点/浮点 DSP C674x + ARM9)+ 紫光同创 Logos/Xilinx Spartan-6 低功耗 F ...

  8. Excel插件之连接数据数据库秒数处理,办公轻松化

    接上文,对excel连接数据库需求的进一步优化: Excel 更改数据同步更新到Mysql数据库 1.通过mysql for excel 插件的思路,了解到一个新的插件 sqlcel,通过这个插件ex ...

  9. 时间序列分析专题——利用SPSS专家建模器进行建模

    SPSS的专家建模器可以自动识别数据,给出最适合的模型,本章通过三个例题介绍如何使用SPSS实现时间序列分析.由于本人对时间序列分析的理解尚浅,做出模型后在论文上的呈现形式需要取查阅资料,以便更好地在 ...

  10. Mac 设置多个版本JDK

    控制台: p.p1 { margin: 0; font: 11px Menlo; color: rgba(0, 0, 0, 1) } span.s1 { font-variant-ligatures: ...