第15次CCF CSP真题解
1、小明上学
题目链接:https://sim.csp.thusaac.com/contest/15/problem/0
本题是模拟红绿灯计时的题,根据红绿灯转换规则可知,红灯后面通常是绿灯,绿灯后面是黄灯,黄灯过后又是红灯。根据题意,当k = 0时,表示小明经过一段道路,此时进行计时操作;当k = 1时,表示小明看到了一个红灯,此时进行计时操作;当k = 2时,表示小明看到了一个黄灯,此时计时操作包括黄灯和红灯的计时;当k = 3时,表示小明看到了一个绿灯,此时可以直接通过,不用进行计时操作。
100分代码:
#include <iostream>
using namespace std;
int main(int argc, char *argv[])
{int r,y,g;cin >> r >> y >> g; int n;cin >> n;int k[110],t[110];for(int i = 0; i < n; i++){cin >> k[i] >> t[i];}int sum = 0;for(int i = 0; i < n; i++){if(k[i] == 0 || k[i] == 1)sum += t[i];else if(k[i] == 2)sum += t[i] + r;}cout << sum << endl;return 0;
}
评测结果:
2、小明放学
题目链接:https://sim.csp.thusaac.com/contest/15/problem/1
本题难度比第一题增加了不少,小明在放学时已经规划好了自己回家的路线,并且能够预测经过各个路段的时间。当经过一段道路时,进行计时操作即可。当经过红绿灯时,需要考虑红绿灯转换的周期问题,红灯、黄灯和绿灯都亮过后算一个周期,具体的周期转换情况如下图所示:
情况1 | |||||||||||
t | g | y | r | g | y | r | g | y | r | g | y |
5 | 30 | 3 | 30 | 30 | 3 | 30 | 30 | 3 | 30 | 30 | 3 |
红 | 绿 | 黄 | 红 | 绿 | 黄 | 红 | 绿 | 黄 | 红 | 绿 | 黄 |
等待 | 通过 | 等待 | 等待 | 通过 | 等待 | 等待 | 通过 | 等待 | 等待 | 通过 | 等待 |
情况2 | |||||||||||
t | r | g | y | r | g | y | r | g | y | r | g |
2 | 30 | 30 | 3 | 30 | 30 | 3 | 30 | 30 | 3 | 30 | 30 |
黄 | 红 | 绿 | 黄 | 红 | 绿 | 黄 | 红 | 绿 | 黄 | 红 | 绿 |
等待 | 等待 | 通过 | 等待 | 等待 | 通过 | 等待 | 等待 | 通过 | 等待 | 等待 | 通过 |
情况3 | |||||||||||
t | y | r | g | y | r | g | y | r | g | y | r |
10 | 3 | 30 | 30 | 3 | 30 | 30 | 3 | 30 | 30 | 3 | 30 |
绿 | 黄 | 红 | 绿 | 黄 | 红 | 绿 | 黄 | 红 | 绿 | 黄 | 红 |
通过 | 等待 | 等待 | 通过 | 等待 | 等待 | 通过 | 等待 | 等待 | 通过 | 等待 | 等待 |
对于红绿灯周期转换过程中的计时问题,可以运用求模运算解决。
如果不会正解的话,可以根据测试点拿分,前 2 个测试点中不存在任何信号灯,所以只需在经过每一段道路时进行计时操作即可,轻轻松松20分就到手了。
20分代码:
#include <iostream>
using namespace std;
int main(int argc, char *argv[])
{int r,y,g;cin >> r >> y >> g;int n;cin >> n;int k,t;long long sum = 0;for(int i = 1; i <= n; i++){cin >> k >> t;sum += t; }cout << sum << endl; return 0;
}
评测结果:
100分代码:
#include <iostream>
using namespace std;
int main(int argc, char *argv[])
{int r,y,g;cin >> r >> y >> g;int n;cin >> n;int k,t;long long sum = 0;for(int i = 1; i <= n; i++){cin >> k >> t;if(k == 0)sum += t; else if(k == 1){if(sum < t + g + y){if(sum % (t + g + y) < t)sum += t - sum % (t + g + y);else if(sum % (t + g + y) >= t && sum % (t + g + y) < t + g)sum += 0;else if(sum % (t + g + y) >= t + g && sum % (t + g + y) < t + g + y)sum += t + g + y + r - sum % (t + g + y); }else if(sum >= t + g + y){if((sum - (t + g + y)) % (r + g + y) < r)sum += r - (sum - (t + g + y)) % (r + g + y);else if((sum - (t + g + y)) % (r + g + y) >= r && (sum - (t + g + y)) % (r + g + y) < r + g)sum += 0;else if((sum - (t + g + y)) % (r + g + y) >= r + g && (sum - (t + g + y)) % (r + g + y) < r + g + y)sum += r + g + y + r - (sum - (t + g + y)) % (r + g + y); }}else if(k == 2){if(sum < t + r + g){if(sum % (t + r + g) < t)sum += t + r - sum;else if(sum % (t + r + g) >= t && sum % (t + r + g) < t + r)sum += t + r - sum % (t + r + g); else if(sum % (t + r + g) >= t + r && sum % (t + r + g) < t + r + g)sum += 0; }else if(sum >= t + r + g){if((sum - (t + r + g)) % (y + r + g) < y + r)sum += y + r - (sum - (t + r + g)) % (y + r + g);else if((sum - (t + r + g)) % (y + r + g) >= y + r && (sum - (t + r + g)) % (y + r + g) < y + r + g)sum += 0; }}else if(k == 3){if(sum < t + y + r){if(sum % (t + y + r) < t)sum += 0;else if(sum % (t + y + r) >= t && sum % (t + y + r) < t + y + r)sum += t + y + r - sum % (t + y + r); }else if(sum >= t + y + r){if((sum - (t + y + r)) % (g + y + r) < g)sum += 0;else if((sum - (t + y + r)) % (g + y + r) >= g && (sum - (t + y + r)) % (g + y + r) < g + y + r)sum += g + y + r - (sum - (t + y + r)) % (g + y + r); }}}cout << sum << endl; return 0;
}
评测结果:
相关文章:

第15次CCF CSP真题解
1、小明上学 题目链接:https://sim.csp.thusaac.com/contest/15/problem/0 本题是模拟红绿灯计时的题,根据红绿灯转换规则可知,红灯后面通常是绿灯,绿灯后面是黄灯,黄灯过后又是红灯。根据题意,当k 0时&…...

STM32硬件平台
STM32 系列是 STMicroelectronics 设计的高度灵活、广泛应用的微控制器(MCU)系列,支持从低功耗应用到高性能处理的需求,适用于工业、汽车、消费电子和物联网等广泛领域。STM32 系列具有广泛的硬件种类和丰富的功能,以下…...

一文讲明白大模型分布式逻辑(从GPU通信原语到Megatron、Deepspeed)
1. 背景介绍 如果你拿到了两台8卡A100的机器(做梦),你的导师让你学习部署并且训练不同尺寸的大模型,并且写一个说明文档。你意识到,你最需要学习的就是关于分布式训练的知识,因为你可是第一次接触这么多卡…...
【人工智能-初级】第6章 决策树和随机森林:浅显易懂的介绍及Python实践
文章目录 一、决策树简介二、决策树的构建原理2.1 决策树的优缺点优点缺点 三、随机森林简介3.1 随机森林的构建过程3.2 随机森林的优缺点优点缺点 四、Python实现决策树和随机森林4.1 导入必要的库4.2 加载数据集并进行预处理4.3 创建决策树模型并进行训练4.4 可视化决策树4.5…...

时间序列预测(九)——门控循环单元网络(GRU)
目录 一、GRU结构 二、GRU核心思想 1、更新门(Update Gate):决定了当前时刻隐藏状态中旧状态和新候选状态的混合比例。 2、重置门(Reset Gate):用于控制前一时刻隐藏状态对当前候选隐藏状态的影响程度。…...

李东生牵手通力股份IPO注册卡关,三年近10亿“清仓式分红”引关注
《港湾商业观察》施子夫 9月27日,通力科技股份有限公司(以下简称,通力股份)再度提交了注册申请,实际上早在去年11月6日公司已经提交过注册,看起来公司注册环节面临卡关。公开信息显示,通力股份…...
Android13、14特殊权限-应用安装权限适配
Android13、14特殊权限-应用安装权限适配 文章目录 Android13、14特殊权限-应用安装权限适配一、前言二、权限适配三、其他1、特殊权限-应用安装权限适配小结2、dumpsys package查看获取到了应用安装权限3、Android权限系统:应用操作管理类AppOpsManager(…...

DMVPN协议
DMVPN(Dynamic Multipoint VPN)动态多点VPN 对于分公司和分总公司内网实现通信环境下,分公司是很多的。我们不可能每个分公司和总公司都挨个建立ipsec隧道 ,而且如果是分公司和分公司建立隧道,就会很麻烦。此时我们需…...
leetcode动态规划(十八)-零钱兑换II
题目 322.零钱兑换II 给你一个整数数组 coins ,表示不同面额的硬币;以及一个整数 amount ,表示总金额。 计算并返回可以凑成总金额所需的 最少的硬币个数 。如果没有任何一种硬币组合能组成总金额,返回 -1 。 你可以认为每种硬…...
2024 CSP-J 题解
2024 CSP-J题解 扑克牌 题目给出了一整套牌的定义,但是纯粹在扯淡,完全没有必要去判断给出的牌的花色和点数,我们用一个循环来依次读入每一张牌,如果这个牌在之前出现过,我们就让答案减一。这里建议用map、unorde…...

GPU 服务器厂家:中国加速计算服务器市场的前瞻洞察
科技的飞速发展,让 GPU 服务器在加速计算服务器领域的地位愈发凸显。中国加速计算服务器市场正展现出蓬勃的生机,而 GPU 服务器厂家则是这场科技盛宴中的关键角色。 从市场预测的趋势来看,2023 年起,中国加速计算服务器市场便已展…...
Hadoop集群修改yarn队列
1.修改默认的default队列参数 注意: yarn.scheduler.capacity.root.队列名.capacity总和不能超过100 <property><name>yarn.scheduler.capacity.root.queues</name><value>default,hive,spark,flink</value><description>The…...

【GPIO】2.ADC配置错误,还是能得到电压数据
配置ADC功能时,GPIO引脚弄错了,P1写成P2,但还是配置成功,能得到电压数据。 首先一步步排查: 既然引脚弄错了,那引脚改为正确的引脚,能得到数据通过第一步判断,GPIO配置似乎是不起作…...
css-元素居中方式
<section class"wrapper"><div class"content">Content goes here</div> </section>1. 使用 Flexbox Flexbox 是一种现代的布局方法,可以轻松实现居中。 .wrapper {display: flex; /* 使用 Flexbox …...
redis内存打满了怎么办?
1、设置maxmemory的大小 我们需要给 Redis设置maxmemory的大小,如果不设置的话,它会受限于系统的物理内存和系统对内存的管理机制。 2、设置内存的淘汰策略 内存的淘汰策略分为 8 种,从淘汰范围来说分为从所有的key中淘汰和从设置过期时间…...
决策算法的技术分析
系列文章目录 提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加 TODO:写完再整理 文章目录 系列文章目录前言(1)第一层级:分层状态机、分层决策树的想法(三个臭皮匠胜过一个诸葛亮)基于场景的固定规则化的分层决策核心思想(2)第二层级:数据管理的方…...

【Python爬虫】获取汽车之家车型配置附代码(2024.10)
参考大哥,感谢大哥:https://blog.csdn.net/weixin_43498642/article/details/136896338 【任务目标】 工作需要想更方便地下载汽车之家某车系配置清单;(垃圾汽车之家不给下载导出表格,配置页叉掉了车系要出来还要重新…...

JVM 加载 class 文件的原理机制
JVM 加载 class 文件的原理机制 JVM(Java虚拟机)是一个可以执行Java字节码的虚拟机。它负责执行Java应用程序和应用程序的扩展,如Java库和框架。 文章目录 JVM 加载 class 文件的原理机制1. JVM1.1 类加载器1.2 魔数1.3 元空间 2. 类加载2.1 …...

NumPy学习第九课:字符串相关函数
前言 各位有没有注意到,NumPy从第八课开始其实基本上都是讲的是NumPy的函数,而且其实就是各种函数的调用,因为NumPy是一个很强大的函数库,这对我们以后再处理项目中遇到的问题时会有很大的帮助。我们将常用的函数进行一个列举&am…...
卷积神经网络(CNNs)在处理光谱特征的序列属性时表现不佳
卷积神经网络(CNNs)在处理光谱签名的序列属性时表现不佳,主要是由于其固有网络架构的局限性。具体原因如下: 局部感受野(Local Receptive Field): CNN 的核心操作是卷积,它利用局部感…...

未来机器人的大脑:如何用神经网络模拟器实现更智能的决策?
编辑:陈萍萍的公主一点人工一点智能 未来机器人的大脑:如何用神经网络模拟器实现更智能的决策?RWM通过双自回归机制有效解决了复合误差、部分可观测性和随机动力学等关键挑战,在不依赖领域特定归纳偏见的条件下实现了卓越的预测准…...
挑战杯推荐项目
“人工智能”创意赛 - 智能艺术创作助手:借助大模型技术,开发能根据用户输入的主题、风格等要求,生成绘画、音乐、文学作品等多种形式艺术创作灵感或初稿的应用,帮助艺术家和创意爱好者激发创意、提高创作效率。 - 个性化梦境…...

AI-调查研究-01-正念冥想有用吗?对健康的影响及科学指南
点一下关注吧!!!非常感谢!!持续更新!!! 🚀 AI篇持续更新中!(长期更新) 目前2025年06月05日更新到: AI炼丹日志-28 - Aud…...
Vue记事本应用实现教程
文章目录 1. 项目介绍2. 开发环境准备3. 设计应用界面4. 创建Vue实例和数据模型5. 实现记事本功能5.1 添加新记事项5.2 删除记事项5.3 清空所有记事 6. 添加样式7. 功能扩展:显示创建时间8. 功能扩展:记事项搜索9. 完整代码10. Vue知识点解析10.1 数据绑…...
【杂谈】-递归进化:人工智能的自我改进与监管挑战
递归进化:人工智能的自我改进与监管挑战 文章目录 递归进化:人工智能的自我改进与监管挑战1、自我改进型人工智能的崛起2、人工智能如何挑战人类监管?3、确保人工智能受控的策略4、人类在人工智能发展中的角色5、平衡自主性与控制力6、总结与…...

智慧医疗能源事业线深度画像分析(上)
引言 医疗行业作为现代社会的关键基础设施,其能源消耗与环境影响正日益受到关注。随着全球"双碳"目标的推进和可持续发展理念的深入,智慧医疗能源事业线应运而生,致力于通过创新技术与管理方案,重构医疗领域的能源使用模式。这一事业线融合了能源管理、可持续发…...

简易版抽奖活动的设计技术方案
1.前言 本技术方案旨在设计一套完整且可靠的抽奖活动逻辑,确保抽奖活动能够公平、公正、公开地进行,同时满足高并发访问、数据安全存储与高效处理等需求,为用户提供流畅的抽奖体验,助力业务顺利开展。本方案将涵盖抽奖活动的整体架构设计、核心流程逻辑、关键功能实现以及…...
三维GIS开发cesium智慧地铁教程(5)Cesium相机控制
一、环境搭建 <script src"../cesium1.99/Build/Cesium/Cesium.js"></script> <link rel"stylesheet" href"../cesium1.99/Build/Cesium/Widgets/widgets.css"> 关键配置点: 路径验证:确保相对路径.…...
2024年赣州旅游投资集团社会招聘笔试真
2024年赣州旅游投资集团社会招聘笔试真 题 ( 满 分 1 0 0 分 时 间 1 2 0 分 钟 ) 一、单选题(每题只有一个正确答案,答错、不答或多答均不得分) 1.纪要的特点不包括()。 A.概括重点 B.指导传达 C. 客观纪实 D.有言必录 【答案】: D 2.1864年,()预言了电磁波的存在,并指出…...

Keil 中设置 STM32 Flash 和 RAM 地址详解
文章目录 Keil 中设置 STM32 Flash 和 RAM 地址详解一、Flash 和 RAM 配置界面(Target 选项卡)1. IROM1(用于配置 Flash)2. IRAM1(用于配置 RAM)二、链接器设置界面(Linker 选项卡)1. 勾选“Use Memory Layout from Target Dialog”2. 查看链接器参数(如果没有勾选上面…...