通过理解题意,我们发现:

当需要拐弯的时候,兔子需要先走回箱子的位置,再走向拐弯的方向。则拐弯操作的花费为 \(2\) 。而直行的操作花费为 \(1\) 。

所以,

如果不需要拐弯,也就是 \(x1=x2\) 或 \(y1=y2\) 时,直接计算花费。

如果需要拐弯,也就是 \(x1\neq x2\) 且 \(y1\neq y2\) 时,计算花费后再加2。

//AC代码
#include<iostream>
#include<cstdio>
#include<algorithm>
#include<cstring>
using namespace std;
int sx,sy,nx,ny,T,ans;
int main()
{
scanf("%d",&T);
while(T--){
scanf("%d%d%d%d",&sx,&sy,&nx,&ny);
if(sx!=nx&&sy!=ny){
ans=abs(nx-sx)+abs(ny-sy)+2;
}
else ans=abs(nx-sx)+abs(ny-sy);
printf("%d\n",ans);
}
return 0;
}

题解 CF1428A 【Box is Pull】的更多相关文章

  1. CF1428A Box is Pull 题解

    Content 有一个兔子拖着一个盒子在走,每秒钟可以带着盒子走一个单位,也可以不带着盒子走一个单位.当且仅当兔子和盒子的距离不超过 \(1\) 时可以带着盒子走一个单位.现给出 \(t\) 次询问, ...

  2. IIS ARR设置HTTP跳转到HTTPS

    GUI Version - Select the website you wish to configure- In the “Features View” panel, double click U ...

  3. Codeforces 436E Cardboard Box (看题解)

    Cardboard Box 贪了个半天贪不对, 我发现我根本就不会贪心. 我们先按b排序, 然后枚举选两颗心的b的最大值, 在这个之前的肯定都要选一个, 因为前面的要是一个都没选的话, 你可以把当前选 ...

  4. 题解-CF436E Cardboard Box

    题面 CF436E Cardboard Box \(n\) 个关卡,对每个关卡可以花 \(a_i\) 时间得到 \(1\) 颗星,或花 \(b_i\) 时间得到 \(2\) 颗星,或不玩.问获得 \( ...

  5. 题解 UVA501 【Black Box】

    思路与中位数一题,解决方案比较像,使用对顶堆来解决. 具体实现为,使用两个堆,大根堆维护较小的值,小根堆维护较大的值,即小根堆的堆顶是较大的数中最小的,大根堆的堆顶是较小的数中最大的. 将大于大根堆堆 ...

  6. codeforces Gravity Flip 题解

    版权声明:本文作者靖心,靖空间地址:http://blog.csdn.net/kenden23/,未经本作者同意不得转载. https://blog.csdn.net/kenden23/article ...

  7. [codeforces 241]C. Mirror Box

    [codeforces 241]C. Mirror Box 试题描述 Mirror Box is a name of a popular game in the Iranian National Am ...

  8. laravel homestead vagrant box安装使用,问题,及相关命令

    Vagrant is a tool that manages oracle virtual boxes 1.本地下载https://atlas.hashicorp.com/laravel/boxes/ ...

  9. 1297 - Largest Box(三分)

    1297 - Largest Box   PDF (English) Statistics Forum Time Limit: 2 second(s) Memory Limit: 32 MB In t ...

随机推荐

  1. request的各种方法

    protected void doPost(HttpServletRequest request, HttpServletResponse response)        throws Servle ...

  2. 将微服务部署到 Azure Kubernetes 服务 (AKS) 实践

    本文是对 <.NET Tutorial - Deploy a microservice to Azure> 的翻译和实践.入门级踩坑实践,k8s 大佬请回避,以免耽误您宝贵的时间. 介绍 ...

  3. python 3 continue 循环控制

  4. 如何创建本地git分支到远程

    创建本地分支到远程: 1.$git init 之后创建的本地仓库默认master分支 如果现在就要$ git branch 查看当前分支,是不显示任何分支的,只有在add,commit文件之后才显示, ...

  5. Linux 系统中环境变量/etc/profile、/etc/bashrc、~/.bashrc的区别

      /etc/profile./etc/bashrc.~/.bashrc的区别   1> etc目录下存放系统管理和配置文件 (系统配置) etc/profile:  profile为所有的用户 ...

  6. netty学习心得2内存池

    http://frankfan915.iteye.com/blog/2199600 https://www.jianshu.com/p/13f72e0395c8:一个性能调优的文档,还有一些linux ...

  7. Oracle学习(一)SQL基础

    一.认识SQL SQL是什么? SQL,结构化查询语言,全称是 Structured Query Language. SQL 是一门 ANSI(American National Standards ...

  8. 2019.8.14 sdfzoier

    zhaojinxi wxk: lixf zhangtingyu wu jialin zhangjinhao liuxinyang zhoukaixuan

  9. 基础篇:JAVA内部类的使用介绍

    目录 1 四种内部类 2 内部类的使用场景和优点 3 成员内部类 4 成员内部类的访问范围详解 5 静态内部类 6 局部内部类 7 匿名内部类 欢迎指正文中错误 关注公众号,一起交流 参考文章 1 四 ...

  10. Spark Parquet详解

    Spark - Parquet 概述 Apache Parquet属于Hadoop生态圈的一种新型列式存储格式,既然属于Hadoop生态圈,因此也兼容大多圈内计算框架(Hadoop.Spark),另外 ...