# RMYC24 **Repository Path**: jingyuancode/rmyc24 ## Basic Information - **Project Name**: RMYC24 - **Description**: RMYC 2022赛季能量机关规则出题程序 - **Primary Language**: C++ - **License**: BSD-3-Clause - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2021-12-24 - **Last Updated**: 2025-04-27 ## Categories & Tags **Categories**: Uncategorized **Tags**: RMYC, RM ## README # RMYC 24点出题程序 ## 运行环境 本程序不依赖第三方库,在C++环境下即可编译运行 ## 思路 本程序主要思路为分类讨论,每一次if代表进行一次分类。 ## 变量说明 - choice(int)用于选择分支; - output(int list)用与存储结果; - x1,x2,x3(int)用于存储已经选择过的位置; - minuend(int)被减数; - subtrahend(int)减数; ## 实现 根据符号分四个大类 ### 加法 根据位数分类(这里的数表示位数) - 1 + 1 + 1 + 1 - 1 + 1 + 1 - 2 + 1 - 2 + 2 ### 减法 根据位数分类(这里的数表示位数) - 2 - 2 - 2 - 1 ### 乘法 直接分类所有情况(这里的数表示具体数值) - 2 * 2 * 2 * 3 - 2 * 3 * 4 - 2 * 2 * 6 - 4 * 6 - 12 * 2 - 24 * 1 ### 除法 除法根据被除数的位数分类(这里的数表示位数) - 2 / 1 - 3 / 1 ### 部分代码解释 ``` y = rand() % m + n; ``` - m表示取值的宽度,例如m = 4表示可以取连续四个整数 - n表示取值的最小值,例如n = 5表示最小取值为5 ``` while (choice == x1 || choice == x2) { choice = rand() % 4; } ``` - 表示随机出一个与x1,x2均不同的取值范围[0,3]的整数 ## 程序复现赛 ### 时间 2021/12/25 -- 2022/1/15 ### 参赛资格 - RMYC2022赛季参赛队/参赛队员 - 注: 1. 允许以团队或个人身份参加。 2. 我无法验证指导老师是否参与,但恳请各位指导老师尊重比赛规则,尊重学生的能力。 ### 参赛方式 1. 加入QQ群:215318565 2. 自主进行代码复现及测试 3. 提交代码 ### 复现要求 - 使用Python3 ### 奖品 - 第一个完成复现的团队/个人: - RM EP原装全新舵机 *1 - RM 贴纸 *1 - SyiRobot定制钥匙扣 *1 - 第二名完成复现的团队/个人: - RM 贴纸 *1 - SyiRobot定制钥匙扣 *1 - 注:第二名团队参赛可申请多个,至多3个 - 在复现过程中第一个发现源码bug的团队/个人: - 华馨京25kg pwm数字舵机 *1 - RM对抗赛 2019版 17mm小弹丸 * 20 - SyiRobot定制钥匙扣 *1 - 注:发现bug可以立即提交,无需等待完成复现 ### 提交方式 - 公开在gitee/github上发布,复现完成时间以开放时间为准 - 发布后提交仓库链接和时间截图在交流群中,经测试认定为复现完成 ### 声明 主办方保留一切解释权 ### 进度 - 第一个复现完成 https://github.com/zhangxu1233/jingyuan_code - 第二个复现完成 https://gitee.com/wf6530201/ro-tas37927 - 第一个发现bug完成