当前位置: 首页 > news >正文

GESP2024年12月认证C++六级( 第三部分编程题(1)树上游走)

参考程序:

#include <iostream>
#include <string>using namespace std;int main() {long long n, s;  // n为移动次数,s为初始节点编号string moves;    // 移动指令串// 输入处理cin >> n >> s;cin >> moves;long long currentNode = s;  // 当前节点编号// 遍历每个移动指令并进行操作for (char move : moves) {if (move == 'U') {if (currentNode > 1) {currentNode /= 2;  // 向上移动到父节点}} else if (move == 'L') {currentNode = 2 * currentNode;  // 向左移动到左儿子} else if (move == 'R') {currentNode = 2 * currentNode + 1;  // 向右移动到右儿子}}// 输出最终的节点编号cout << currentNode << endl;return 0;
}

程序改进(引入栈与位运算实现数据防溢出)

#include <bits/stdc++.h>
#define ll long long
using namespace std;
const ll INF = 1e12;
int n;
stack<char> st;
string c;
ll s;
int main()
{cin >> n >> s >> c;for(int i = 0; i < n; i ++){if(c[i] == 'U'){if(s == 1) continue;if(st.size()){st.pop();continue;}s >>= 1;}else if(c[i] == 'L'){if((s << 1) > INF){st.push('L');continue;}s = s << 1;}else{if((s << 1 | 1) > INF){st.push('R');continue;}s = s << 1 | 1;}}cout << s << "\n";return 0;
}

http://www.lryc.cn/news/521193.html

相关文章:

  • Redis数据结构服务器
  • 【向量数据库 Milvus】centos8源码安装和部署 Milvus 2.5.3
  • MySQL数据库(SQL分类)
  • C++实现设计模式---原型模式 (Prototype)
  • 鸿蒙面试 2025-01-10
  • Linux Top 命令 load average 指标解读
  • 31_搭建Redis分片集群
  • 客户案例 | Ansys与索尼半导体解决方案公司合作推进自动驾驶汽车基于场景的感知测试
  • c#-Halcon入门教程——标定
  • MC1.12.2 macOS高清修复OptiFine运行崩溃
  • 精选2款.NET开源的博客系统
  • 转运机器人在物流仓储行业的优势特点
  • 简识MySQL的InnoDB Locking锁的分类
  • 如何通过openssl生成.crt和.key
  • .NetCore 使用 NPOI 读取带有图片的excel数据
  • linux上使用update-alternatives来选择软件版本
  • 【Elasticsearch复合查询】
  • Java List去重:Stream、HashMap与TreeSet对比分析
  • 大师课程:专业角色AE+AI动画动态设计关键帧学院视频课程 Key Frame Academy – Character Animation Launchpad
  • 游戏盾SDK如何防护APP攻击
  • Spring Boot 3.x 整合 Logback 日志框架(支持异步写入)
  • 从0开始学习搭网站第二天
  • 【Unity-Animator】通过 StateMachineBehaviour 实现回调
  • 鸿蒙中自定义slider实现字体大小变化
  • 数据结构与算法之栈: LeetCode 71. 简化路径 (Ts版)
  • STM32-笔记40-BKP(备份寄存器)
  • NAS中不同RAID级别特点与适用场景
  • node.js的进程保活
  • meta name=“viewport“ content=“width=device-width, initial-scale=1.0“
  • 【vue3】 defineExpose 的使用