CCF CSP认证 历年题目自练 Day22

CCF CSP认证 历年题目自练 Day22

题目一

试题编号: 201912-1
试题名称: 报数
时间限制: 1.0s
内存限制: 512.0MB
请添加图片描述
请添加图片描述

题目分析(个人理解)

  1. 每一个人都要报多少个数字,我选择字典存储,key代表甲乙丙丁4人,value代表每个人报的是7的倍数的个数。我们需要一个计数器从1开始报数一直到满足结束条件。(开始进入循环)
  2. 如果计数器是7的倍数,那么对应的dic[number%4]就+1 (找到是哪个人报的)注意停止条件,在总共报出n个数后(不计入被跳过的数)游戏结束。如果计数器减去所有是7的倍数的个数大于等于n那么游戏结束(跳出循环)。
  3. 上代码!!!
n=int(input())
dic={}
for i in range(4):dic[i]=0
number=0
while(1):number+=1if number%7==0 or '7' in str(number):dic[number%4]+=1if (number-dic[1]-dic[2]-dic[3]-dic[0])>=n:breakprint(dic[1])#甲
print(dic[2])#乙
print(dic[3])#丙
print(dic[0])#丁

题目二

试题编号: 201912-2
试题名称: 回收站选址
时间限制: 1.0s
内存限制: 512.0MB
请添加图片描述
请添加图片描述
请添加图片描述

题目分析(个人理解)

  1. 题目又臭又长,我的理解是这样的,第一行输入的是有几个存垃圾的地方,后面的每一行输入的是对应的坐标,现在要建回收站,那么条件是垃圾站选址点必须有垃圾而且上下左右也要有垃圾,否则就不建立垃圾站,还有个评分的条件,就是看回收站的左上,左下,右上,右下四个点是否有垃圾,有几个点有垃圾评分就是多少。现在要输出评分为0,1,2,3,4的回收站的个数。
  2. 我选择用列表分别存放每个垃圾地点的横坐标和纵坐标,我还需要判断所有的垃圾点哪些能建立垃圾回收站,在满足以上条件(是垃圾点,满足建立垃圾回收站站的条件)之后,再判断该点(建回收站的点)的左上,左下,右下,右上是否存在垃圾,如果存在计数器加一。我把最后需要输出的存放在列表num中,位序即为得分,值就是评分为0,1,2,3,4的垃圾回收站的个数。最后循环输出num即可
  3. 下面具体到判断该点是否能建立垃圾回收站,直接遍历每个垃圾点(回收站一定在垃圾点),先找到每个垃圾点上下左右的坐标,之后再去判断这些坐标是否在我输入的垃圾点全部存在,之后再进行评分的判断
  4. 评分的判断,找到回收站的点然后找到对应的四个对角的位置,再去遍历判断每个垃圾点的横纵坐标有几个满足条件的,有一个就计数器加1,对应的num位序的值也+1。
  5. 上代码!!!
n=int(input()) #输入的存垃圾地点数
a=[0]*n  #输入的垃圾地点的横坐标
b=[0]*n #输入的垃圾地点的纵坐标
t=0 #记录某点上下左右邻居位置是否存在垃圾
num=[0]*5 #记录满足条件的地方其四个对角的得分#输入
for i in range(n):a[i],b[i]=map(int,input().split())#两层循环,对于每个坐标循环判断其上下左右是否存在。
#若存在,则判断其对角种几处有垃圾,把相应的值用num数组记录
for o in range(n):t = 0hx,hy=a[o],b[o]+1     #上的横纵坐标rx,ry=a[o]+1,b[o]bx,by=a[o],b[o]-1lx,ly=a[o]-1,b[o]ci=0for i in range(n):if (a[i]==hx and b[i]==hy )or (a[i]==rx and b[i]==ry) or (a[i]==bx and b[i]==by) or (a[i]==lx and b[i]==ly):t+=1k=0if t==4:#四个对角位置的横纵坐标lhx ,lhy = a[o] - 1 , b[o] + 1rhx ,rhy = a[o] + 1 , b[o] + 1rbx ,rby = a[o] + 1 , b[o] - 1lbx ,lby = a[o] - 1 , b[o] - 1for i in range(n):if (a[i] == lhx and b[i] == lhy) or (a[i] == rhx and b[i] == rhy) or (a[i] == lbx and b[i] == lby) or (a[i] == rbx and b[i] == rby):k = k + 1num[k]+=1#输出
for j in range(5):print(num[j])

总结

没啥好总结的,该干啥干啥。
请添加图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/149251.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

堆--数组中第K大元素

如果对于堆不是太认识&#xff0c;请点击&#xff1a;堆的初步认识-CSDN博客 解题思路&#xff1a; /*** <h3>求数组中第 K 大的元素</h3>* <p>* 解体思路* <ol>* 1.向小顶堆放入前k个元素* 2.剩余元素* 若 < 堆顶元素, 则略过* …

【GO 编程语言】面向对象

指针与结构体 文章目录 指针与结构体一、OOP 思想二、继承三、方法四、接口实现五、多态六、空接口七、接口继承八、接口断言九、Type别名 一、OOP 思想 Go语言不是面向对象的语言&#xff0c;这里只是通过一些方法来模拟面向对象&#xff0c;从而更好的来理解面向对象思想 面…

Win11 安装 Vim

安装包&#xff1a; 链接&#xff1a;https://pan.baidu.com/s/1Ru7HhTSotz9mteHug-Yhpw?pwd6666 提取码&#xff1a;6666 双击安装包&#xff0c;一直下一步。 配置环境变量&#xff1a; 先配置系统变量中的path&#xff1a; 接着配置用户变量&#xff1a; 在 cmd 中输入…

小谈设计模式(19)—备忘录模式

小谈设计模式&#xff08;19&#xff09;—备忘录模式 专栏介绍专栏地址专栏介绍 备忘录模式主要角色发起人&#xff08;Originator&#xff09;备忘录&#xff08;Memento&#xff09;管理者&#xff08;Caretaker&#xff09; 应用场景结构实现步骤Java程序实现首先&#xff…

基于Vue+ELement实现增删改查案例与表单验证(附源码)

&#x1f389;&#x1f389;欢迎来到我的CSDN主页&#xff01;&#x1f389;&#x1f389; &#x1f3c5;我是Java方文山&#xff0c;一个在CSDN分享笔记的博主。&#x1f4da;&#x1f4da; &#x1f31f;推荐给大家我的专栏《ELement》。&#x1f3af;&#x1f3af; &#x1…

打开MySQL数据库

在命令行里输入mysql --version就可以查看&#xff1a; mysql -uroot -p之前设置的密码&#xff08;不用输入&#xff09;就可登录成功&#xff1a;

karmada v1.7.0安装指导

前言 安装心得 经过多种方式操作&#xff0c;发现二进制方法安装太复杂&#xff0c;证书生成及其手工操作太多了&#xff0c;没有安装成功&#xff1b;helm方式的安装&#xff0c;v1.7.0的chart包执行安装会报错&#xff0c;手工修复了报错并修改了镜像地址&#xff0c;还是各…

Redis-数据过期策略

数据过期策略 惰性删除策略优点&#xff1a;对cpu比较友好&#xff0c;在用到该key的时候才去进行判断&#xff0c;对于很多用不到key不用浪费时间去检查是否过期缺点&#xff1a;对内存不友好&#xff0c;如果一个key过期了&#xff0c;但是我们又一直没有用到该key&#xff0…

竞赛选题 深度学习 opencv python 公式识别(图像识别 机器视觉)

文章目录 0 前言1 课题说明2 效果展示3 具体实现4 关键代码实现5 算法综合效果6 最后 0 前言 &#x1f525; 优质竞赛项目系列&#xff0c;今天要分享的是 &#x1f6a9; 基于深度学习的数学公式识别算法实现 该项目较为新颖&#xff0c;适合作为竞赛课题方向&#xff0c;学…

1800_vim的宏录制功能尝试

全部学习信息汇总&#xff1a; GreyZhang/editors_skills: Summary for some common editor skills I used. (github.com) 最近5年多来&#xff0c;我emacs的编辑器用的还是比较多的。我的配置基本上是一个spacemacs&#xff0c;然后根据自己的需求增加了一丁点儿的其他配置。而…

数控车床中滚珠螺母的维护保养方法

滚珠螺母是一种高精度的机械部件&#xff0c;广泛应用于各种机械设备中&#xff0c;包括数控机床、精密轴承座、滚珠丝杆等&#xff0c;滚珠螺母作为数控机床中的进给系统的重要组件&#xff0c;其维护保养方法对于机床的精度和使用寿命具有重要影响。以下为数控机床滚珠螺母维…

李沐深度学习记录4:12.权重衰减/L2正则化

权重衰减从零开始实现 #高维线性回归 %matplotlib inline import torch from torch import nn from d2l import torch as d2l#整个流程是&#xff0c;1.生成标准数据集&#xff0c;包括训练数据和测试数据 # 2.定义线性模型训练 # 模型初始化&#xff08;函…

基于Kylin的数据统计分析平台架构设计与实现

目录 1 前言 2 关键模块 2.1 数据仓库的搭建 2.2 ETL 2.3 Kylin数据分析系统 2.4 数据可视化系统 2.5 报表模块 3 最终成果 4 遇到问题 1 前言 这是在TP-LINK公司云平台部门做的一个项目&#xff0c;总体包括云上数据统计平台的架构设计和组件开发&#xff0c;在此只做…

1.2 数据模型

思维导图&#xff1a; 前言&#xff1a; **1.2.1 什么是模型** - **定义**&#xff1a;模型是对现实世界中某个对象特征的模拟和抽象。例如&#xff0c;一张地图、建筑设计沙盘或精致的航模飞机都可以视为具体的模型。 - **具体模型与现实生活**&#xff1a;具体模型可以很容…

2023/9/27 -- ARM

【汇编语言相关语法】 1.汇编语言的组成部分 1.伪操作&#xff1a;不参与程序的执行&#xff0c;但是用于告诉编译器程序该怎么编译 .text .global .end .if .else .endif .data2.汇编指令 编译器将一条汇编指令编译成一条机器码&#xff0c;在内存里一条指令占4字节内…

【C++ 学习 ㉕】- 万字详解 unordered_map 和 unordered_set(哈希表的查找和容器的模拟实现)

目录 一、unordered_map 的基本介绍 二、unordered_set 的基本介绍 三、相关练习 3.1 - 在长度 2N 的数组中找出重复 N 次的元素 3.2 - 存在重复元素 3.3 - 两句话中的不常见单词 四、哈希表的查找 4.1 - 哈希表的基本概念 4.2 - 哈希函数的构造方法 4.3 - 处理冲突的…

UG\NX二次开发 获取所有子部件,封装两个函数

文章作者:里海 来源网站:《里海NX二次开发3000例专栏》 感谢粉丝订阅 感谢 凉夜ronin 订阅本专栏,非常感谢。 简介 UG\NX二次开发 获取所有子部件,封装两个函数 效果 获取非抑制的所有子部件 //获取非抑制的所有子部件 vector<tag_t> GetChildPart(tag_t partOcc) {…

深度学习(3)---PyTorch中的张量

文章目录 一、张量简介与创建1.1 简介1.2 张量的创建 二、张量的操作2.1 张量的拼接与切分2.2 张量索引 三、张量的数学运算 一、张量简介与创建 1.1 简介 1. 张量是一个多维数组&#xff0c;它是标量、向量、矩阵的高维拓展。 2. 在张量的定义中&#xff0c;方括号用于表示张…

小谈设计模式(16)—抽象工厂模式

小谈设计模式&#xff08;16&#xff09;—抽象工厂模式 专栏介绍专栏地址专栏介绍 抽象工厂模式结构抽象工厂&#xff08;AbstractFactory&#xff09;具体工厂&#xff08;ConcreteFactory&#xff09;抽象产品&#xff08;AbstractProduct&#xff09;具体产品&#xff08;C…

MyBatisPlus(十)判空查询

说明 判空查询&#xff0c;对应SQL语句中的 IS NULL语句&#xff0c;查询对应字段为 NULL 的数据。 isNull /*** 查询用户列表&#xff0c; 查询条件&#xff1a;电子邮箱为 null 。*/Testvoid isNull() {LambdaQueryWrapper<User> wrapper new LambdaQueryWrapper<…