[ABC272D] Root M Leaper

洛谷链接
原题链接
题解

题目描述

有一个大小为 N×N 的方格图(网格)。在本题中,我们所说的方格 (i,j) 指网格从上往下数第 i 行,从左往右数第 j 列。

最开始,有一个棋子位于方格 (1,1) 。现在你可以进行下面这个操作若干次:

  • 当前棋子位于 (i,j) ,那么移动它到一个距离它刚好 M 的点(不超出网格)。

本题中的“距离”,指欧几里得距离。即方格 (i,j)(k,l) 的距离是 (ik)2+(jl)2

现在对于整个网格,请你确定棋子能否到达方格 (i,j) 。如果可以,输出到达它的最少操作次数;如果不行,输出 -1

输入格式

输入两个正整数 NM

N M

输出格式

输出共 N 行。 第 i 行包含 N 个整数,中间以一个空格隔开。如果棋子可以到达方格 (i,j) ,第 i 行第 j 列应输出到达它的最少操作次数;如果不行,输出 -1

说明/提示

数据范围

  • 1  N  400
  • 1  M  106
  • 输入全为整数

样例说明

对于样例1,你可以把棋子通过一定次数的操作挪到这个方格图的任意位置。

比如说,我们可以通过如下操作把棋子移到 (2,2)

  1. 开始棋子在 (1,1)(1,1)(1,2) 的距离刚好是 1 ,所以我们把它移到 (1,2)
  2. 现在棋子在 (1,2) 了。(1,2)(2,2)的距离也刚好是 1 ,所以我们就把它移到了 (2,2)
posted @   robinyqc  阅读(18)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
点击右上角即可分享
微信分享提示