C - Tile Distance 2

分析:每穿过一行就会加一

先纵向走,再横向走

统一用砖头的左半部分计算

#include<bits/stdc++.h>

using namespace std;

typedef long long ll;

int main(){

ll sx,sy,tx,ty;cin>>sx>>sy>>tx>>ty;

if((sx+sy)%2!=0)sx--;

if((tx+ty)%2!=0)tx--;

ll ans=abs(sy-ty);

if(abs(sy-ty)<abs(sx-tx)){

ans+=(abs(sx-tx)-abs(sy-ty))/2;

}

cout<<ans<<endl;

}

相关推荐
imgsq2 分钟前
已安装 MFC 仍提示“此项目需要 MFC 库”的解决方法 (MSB8041)
c++·mfc
Vacant Seat30 分钟前
图论-实现Trie(前缀树)
java·开发语言·数据结构·图论
猪猪虾的业余生活38 分钟前
Qt 驾校考试系统项目实现
开发语言·qt
香菇滑稽之谈40 分钟前
责任链模式的C++实现示例
开发语言·c++·设计模式·责任链模式
蜕变的土豆1 小时前
二、重学C++—C语言核心
c语言·c++
LiDAR点云1 小时前
Matlab中快速查找元素索引号
数据结构·算法·matlab
CYRUS_STUDIO1 小时前
安卓逆向魔改版 Base64 算法还原
android·算法·逆向
风莫寻1 小时前
【Troubleshot】Qt 长按按键 keyPressEvent keyReleaseEvent 自动重复问题
开发语言·qt
ZC·Shou1 小时前
Rust 之一 基本环境搭建、各组件工具的文档、源码、配置
开发语言·rust·cargo·rustc·rustup·clippy·rustfmt
Hello.Reader1 小时前
深入理解 Rust 中的模式匹配语法
开发语言·rust