OD C卷 - 反射计数

反射计数(200)

  • 给定一个包含0 、1的二维矩阵;
  • 一个物体从给定的初始位置出发,在给定的速度下移动,遇到矩阵的边缘则发生镜面反射,无论物体经过0还是1,都不影响其速度;
  • 经过t时间单位后,物体经过1点的次数(初始位置为1也计入);
    输入描述:
    第一行为初始信息 w h x y sx sy t
    w h 为矩阵的宽度、高度 w在(0,100) h在(0,1000)
    x y 为初始位置,x对应的列索引,y对应行索引;
    sx sy 为初始速度,范围 [-1, 1],正方向为右或者下
    t 为经过的时间,范围 [0, 100)
    输出描述:
    经过1的次数

示例1
输入:
12 7 2 1 1 -1 13
001000010000
001000010000
001000010000
001000010000
001000010000
001000010000
001000010000
输出:
3

思路:

  • 简单模拟过程即可,注意起点为1时计入在内;
  • 行走过程
    在这里插入图片描述

# 输入第一行数据
w, h, x, y, sx, sy, t = [int(x) for x in input().split()]# 0 1 矩阵
matrix = [[0 for i in range(w)] for j in range(h)]
for i in range(h):input_str = input().strip()for j in range(w):matrix[i][j] = int(input_str[j])# 起始位置开始走
if matrix[y][x] == 1:result = 1
else:result = 0while True:if t == 0: # 时间已走完breakelse:# 列 的反射if (x + sx < 0) or (x + sx > w - 1):sx = -sx# 行 的反射elif (y + sy < 0) or (y + sy > h - 1):sy = -sy # 反射# 走一步x += sxy += syif matrix[y][x] == 1:result += 1t -= 1
print(result)

 

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C++ 之多态虚函数原理及应用

文章目录 多态基本概念和原理虚函数的基本原理和概念虚析构和纯虚析构多重继承中的虚函数小结 多态基本概念和原理 多态的基本概念 **多态是C面向对象三大特性之一** 多态的定义 多态是一种面向对象编程概念&#xff0c;指同一个行为&#xff08;方法&#xff09;在不同的对象上…

ChatGPT与传统搜索引擎的区别:智能对话与关键词匹配的差异

引言 随着互联网的快速发展&#xff0c;信息的获取变得比以往任何时候都更加便捷。在数字化时代&#xff0c;人们对于获取准确、及时信息的需求愈发迫切。传统搜索引擎通过关键词匹配的方式为用户提供了大量的信息&#xff0c;然而&#xff0c;这种机械式的检索方式有时候并不…

ubuntu 中安装docker

1 资源地址 进入ubuntu官网下载Ubuntu23.04的版本的镜像 2 安装ubuntu 这里选择再Vmware上安装Ubuntu23.04.6 创建一个虚拟机&#xff0c;下一步下一步 注意虚拟机配置网络桥接&#xff0c;CD/DVD选择本地的镜像地址 开启此虚拟机&#xff0c;下一步下一步等待镜像安装。 3…

书生·浦语大模型实战营之全链路开源体系

书生浦语大模型实战营之全链路开源体系 为了推动大模型在更多行业落地开花&#xff0c;让开发者们更高效的学习大模型的开发与应用&#xff0c;上海人工智能实验室重磅推出书生浦语大模型实战营&#xff0c;为广大开发者搭建大模型学习和实践开发的平台&#xff0c;两周时间带…

【Java程序设计】【C00352】基于Springboot的疫情隔壁酒店管理系统(有论文)

基于Springboot的疫情隔壁酒店管理系统&#xff08;有论文&#xff09; 项目简介项目获取开发环境项目技术运行截图 项目简介 项目获取 &#x1f345;文末点击卡片获取源码&#x1f345; 开发环境 运行环境&#xff1a;推荐jdk1.8&#xff1b; 开发工具&#xff1a;eclipse以…

C语言例4-28:求两个正整数的最大公约数。

算法分析&#xff1a; 输入两个正整数m和nm%n 的余数 r&#xff0c;然后 mn;nr;当 n0, 则m是最大公约数&#xff0c;算法结束&#xff1b;否则转至执行2&#xff0c;重复上述过程&#xff0c;直到n0为止 代码如下&#xff1a; //求两个正整数的最大公约数。 #include<std…

PointNet++论文复现(三)【抽象层定义、分类模型 代码详解】

目录 抽象层 特征提取 整体代码 分类模型 以 pointnet2_cls_msg.py 为例 整体代码 抽象层 位于 pointnet2_utils.py 定义 特征提取 整体代码 # 特征提取 对应PointNet++ 中的 set abstraction (集合抽象化) # 首先, 通过 sample_and_group 操作形成局部 group # 然后, 对…

JAVA实现大文件的分片上传与下载(SPRINGBOOT+VUE3)

版本&#xff1a;6.5.40 代码&#xff1a;up6-jsp-springboot: Web大文件上传-jsp-springboot示例 - Gitee.com nosql示例 nosql示例不需要进行任何配置&#xff0c;可以直接访问测试。 SQL示例 1.创建数据库 2.配置数据库连接 3.自动下载maven依赖 4.启动项目 启动成功 6.访…

Autosar-NvM配置详解(免费)-1

1NvMd在Autosar架构中的位置 NvM模块包含&#xff1a;NvM, NemIf&#xff0c;Fee&#xff0c;Ea, Fls和Eep&#xff0c;它们的说明如下&#xff1a; NvM&#xff1a;NvM主要考虑的是数据的存储&#xff0c;直接与应用层进行交互。它主要针对的对象是数据&#xff0c;关心的是…

【功能实现】新年贺卡(蓝桥)

题目分析&#xff1a; 想要实现一个随机抽取功能 功能拆解&#xff1a;题目给了数组&#xff0c;我们采用生成随机数的方式&#xff0c;随机数作为数组的索引值访问数组的值。 并返回获取到的值&#xff0c;将获取到的值插入到页面中。 document.addEventListener(DOMConten…

TCPView下载安装使用教程(图文教程)超详细

「作者简介」&#xff1a;CSDN top100、阿里云博客专家、华为云享专家、网络安全领域优质创作者 「推荐专栏」&#xff1a;更多干货&#xff0c;请关注专栏《网络安全自学教程》 TCPView是微软提供的一款「查看网络连接」和进程的工具&#xff0c;常用来查看电脑上的TCP/UDP连接…

深入解析《企业级数据架构》:HDFS、Yarn、Hive、HBase与Spark的核心应用

写在前面 进入大数据阶段就意味着进入NoSQL阶段&#xff0c;更多的是面向OLAP场景&#xff0c;即数据仓库、BI应用等。 大数据技术的发展并不是偶然的&#xff0c;它的背后是对于成本的考量。集中式数据库或者基于MPP架构的分布数据库往往采用的都是性能稳定但价格较为昂贵的小…