移动距离
一个蛇形矩阵,给你两个数字,求最少的移动距离:只能横着走或竖着走
这个移动的距离好求:横坐标的差+纵坐标的差
#include<iostream> #include<cmath> using namespace std; int main(){ int w,m,n; cin>>w>>m>>n; m--,n--; int x1,y1,x2,y2; x1=m/w; x2=n/w; if(x1%2==0) y1=m%w; else y1=w-1-m%w; if(x2%2==0) y2=n%w; else y2=w-1-n%w; cout<<abs(x1-x2)+abs(y1-y2)<<endl; return 0; } /* 0 1 2 3 4 5 0 0 1 2 3 4 5 1 10 9 8 7 6 2 行号:n/w; 列号:偶数:n%w 奇数:w-1-n%w 因为蛇形 所以在奇偶行不一样 奇数行需要翻转一下 */
找规律吧,具体细品
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具