当前位置: 首页 > news >正文

P8623 [蓝桥杯 2015 省 B] 移动距离

题目描述

在这里插入图片描述

思路

最短移动距离,画个图,就是曼哈顿距离啊!x绝对值之差+y绝对值之差

代码

求m,n的坐标
可以构建矩阵,然后求等于m,n情况下的横纵坐标,复杂度O( n 2 n^2 n2)
因为构建的这个矩阵是有规律的,可以直接求坐标,不用构建矩阵

第一种方法很好实现,我就不写了

#include <bits/stdc++.h>
using namespace std;

int main() {
    int w, m, n;
    cin >> w >> m >> n;

    // 从 1-based 转为 0-based
    m--, n--;  //这一步是关键!!

    // 求 m 对应的行列
    int row1 = m / w;
    int col1 = (row1 % 2 == 0) ? (m % w) : (w - 1 - (m % w));

    // 求 n 对应的行列
    int row2 = n / w;
    int col2 = (row2 % 2 == 0) ? (n % w) : (w - 1 - (n % w));

    // 曼哈顿距离
    cout << abs(row1 - row2) + abs(col1 - col2) << endl;

    return 0;
}

总结

曼哈顿距离,蛇形矩阵求横纵坐标

相关文章:

  • go学习记录(第一天)
  • 一、TorchRec里边的输入输出类型
  • 为什么要将函数变量化?
  • django rest framework相关面试题
  • windows+cmake+vscode+NDK远程调试安卓端C++项目
  • 回文日期1
  • 泛微ECOLOGY9 记 数据展现集成 自定义开窗测试中对SQL 的IN语法转换存在BUG
  • Linux中OS的管理和进程的概念
  • 【力扣hot100题】(087)乘积最大子数组
  • LIB-ZC, 一个跨平台(Linux)平台通用C/C++扩展库, 字符集转码/字符集探测
  • IO流——字节输入输出流:FileInputStream FileOutputStream
  • 视频内容原数据获取接口开发指南
  • 直线模组过载使用会有什么效果?
  • 数据驱动的温暖守护:智慧康养平台如何实现 “千人千面” 的精准照护?
  • Python 根据多个下标向列表中插入对应的值的巧妙方法:逆序插入
  • React8+taro开发微信小程序,实现lottie动画
  • 编程规范(c++)
  • ecovadis评分要求,如何提高ecovadis分数,未来展望
  • GitHub 趋势日报 (2025年04月10日)
  • STM32嵌入式开发从入门到实战:全面指南与项目实践
  • 如果只做p2p种子搜索网站/nba新闻最新消息
  • 时空网站建设的可行性分析/营销策略有哪些4种
  • 万网域名优惠口令/临沂seo排名外包
  • 徐州网站建设方案开发/免费推广产品的网站
  • 水头网站建设/廊坊seo关键词排名
  • 怎么申请免费网站/网络广告推广方式