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;

}

相关推荐
PYSpring3 分钟前
数据结构-LRU缓存(C语言实现)
c语言·数据结构·缓存
毕小宝6 分钟前
逻辑回归(下): Sigmoid 函数的发展历史
算法·机器学习·逻辑回归
小叮当爱咖啡11 分钟前
DenseNet算法:口腔癌识别
算法
希望有朝一日能如愿以偿15 分钟前
算法(食物链)
算法
鱼跃鹰飞16 分钟前
Leecode热题100-295.数据流中的中位数
java·服务器·开发语言·前端·算法·leetcode·面试
小蜗笔记22 分钟前
在Python中实现多目标优化问题(7)模拟退火算法的调用
开发语言·python·模拟退火算法
TANGLONG22226 分钟前
【C语言】数据在内存中的存储(万字解析)
java·c语言·c++·python·考研·面试·蓝桥杯
summ1ts26 分钟前
组合数求法汇总
c++·数学·算法·离散数学·组合数学
杨荧28 分钟前
【JAVA开源】基于Vue和SpringBoot的水果购物网站
java·开发语言·vue.js·spring boot·spring cloud·开源
牛魔王的小怪兽40 分钟前
ROS C++ : 使用ros::AsyncSpinner,实现多线程处理ROS消息
c++·ros