Problem hidden
|This problem was hidden by Editorial Board member probably because it has incorrect language|version or invalid test data, or description of the problem is not clear.|

DIST13 - Distância de Manhattan

 

Maria é uma moradora de Nlogópolis, uma cidade na Nlogônia que tem uma característica muito interessante: todas as ruas da cidade ou são orientadas no sentido norte-sul ou são orientadas no sentido leste-oeste. Isso significa que, dadas duas ruas, ou elas são paralelas ou elas são perpendiculares entre si.

Todas as ruas da cidade são de mão dupla e é possível seguir em qualquer direção em um cruzamento.

Agora Maria está atrasada para uma reunião e precisa de sua ajuda. Dadas as coordenadas iniciais de Maria e da reunião, determine o número mínimo de cruzamentos que Maria deve atravessar para chegar ao seu destino. Esse número inclui o cruzamento onde ocorrerá a reunião mas não inclui a posição inicial de Maria.

Entrada

A única linha da entrada contém quatro inteiros, Xm, Ym, Xr, Yr, indicando as coordenadas de Maria (Xm, Ym) e da reunião (Xr, Yr). O ponto de partida de Maria nunca será igual ao local da reunião, ou seja, pelo menos uma das coordenadas será diferente.

Saída

Seu programa deve imprimir uma única linha contendo um único inteiro: o número mínimo de cruzamentos que Maria precisa atravessar para chegar até o local da reunião.

Restrições

  • 0 ≤ Xm, Ym ≤ 1000
  • 0 ≤ Xr, Yr ≤ 1000

Exemplos

Entrada
0 0 5 6

Saída
11

Entrada
52 75 120 75

Saída
68

Adicionado por:Marcos Kawakami
Data:2014-02-24
Tempo limite:1s
Tamanho do fonte:50000B
Memory limit:1536MB
Cluster: Cube (Intel G860)
Linguagem permitida:Todas exceto: ASM64 CLOJURE ERL FSHARP PERL6 PY_NBC SCALA TCL
Origem:OBI 2013 - Fase 2 Nível 1

hide comments
2021-03-17 19:39:34
já experimentou fazer o delta x e o deltay?
|Xr-Xm| - |Yr-Ym|
Meu principal problema nessa questão é não saber usar módulo ou no caso o valor absoluto, quem souber pode me ajudar? programo em c e c++
2016-07-21 23:53:43
#include <iostream>
#include<stdlib.h>
using namespace std;

int main()
{
int Xm,Ym,Xr,Yr;
cin >> Xm >> Ym >> Xr >> Yr;

cout << (Xr+Yr) - (Xm+Ym);


return 0;
}
Fiz assim...está considerado errado pelo compilador do site, mas não consegui pensar em outra coisa!
2016-01-12 02:19:40 Afonso Silva
não consigo fazer essa questão.
2015-11-12 19:24:24
Maria se atrasando em 3...2...1...
© Spoj.com. All Rights Reserved. Spoj uses Sphere Engine™ © by Sphere Research Labs.