-
-
Save veigavitor/b0270be55e0e985b0a4eae1c435156a9 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#include <bits/stdc++.h> | |
using namespace std; | |
int32_t main() { | |
ios::sync_with_stdio(false); | |
cin.tie(nullptr); | |
// temos 'k' entradas | |
int k; | |
cin >> k; | |
while(k--) { | |
// lemos a entrada | |
int a, b, c, d; | |
cin >> a >> b >> c >> d; | |
// calculamos quantas casas para cima (somente no eixo y) o Andremfk tem que andar | |
// depois de andar 'cima' casas para cima, ele também terá andado 'cima' casas para a direta | |
int cima = d - b; | |
// agora, calculamos quantas casas ele tem que andar para esquerda (no eixo x) depois de andar 'cima' casas para a direita | |
int esquerda = (a + cima) - c; | |
// se, o valor de 'cima' ou 'esquerda' derem negativos, quer dizer que ele teria que | |
// andar para baixo ou para a direita, o que fere as condições do problema | |
if(cima < 0 or esquerda < 0) { | |
cout << -1 << endl; | |
continue; | |
} | |
// retornamos a soma das quantidade de cada tipo de movimento que ele vai fazer | |
cout << cima + esquerda << endl; | |
} | |
return 0; | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment