# PBinfo #2248 – coordonate – Rezolvare C++

Sursa: Codul lui Andrei
Limbaj: C++
Autor rezolvare: andrei

## Enunț

Se consideră un pătrat mare împărțit în n x n pătrățele identice. Pătratul are deci n linii și n coloane (numerotate de la 1 la n), iar în fiecare pătrățel este trecut câte un număr natural cuprins între 1 și n2, ca în exemplul de mai jos în care n = 4:



Cerința
Pentru valorile n, x, y, val date, trebuie să determinați:


ce valoare V se află în pătratul n x n la poziția (x, y).
la ce poziție (i, j) se află valoarea val în pătratul n x n.

Date de intrare
Programul citește de la tastatură numerele n, x, y, val, separate prin spații.

Date de ieșire
Programul va afișa pe ecran numerele V, i, j, separate prin câte un spațiu, unde V reprezintă valoarea de la poziția (x, y), iar (i, j) reprezintă poziția unde se află valoarea val.

Restricții și precizări

1 ≤ n ≤ 20000
1 ≤ x, y ≤ n
1 ≤ val ≤ n2

Exemplu:
Intrare

4 2 3 12
Ieșire

7 3 4

## Cod sursă C++

```cpp
#include <iostream>
using namespace std;
int main() {
    int x, y, n, val, rez;
    cin >> n >> x >> y >> val;
    rez = (x - 1) * n + y;
    cout << rez << " ";
    x = val / n;
    y = val % n;
    if (y == 0) y = n;
    else x++;
    cout << x << " "  << y;
    return 0;
}
```

## Resurse

- [Pagina originală](https://codulluiandrei.ro/rezolvari/pbinfo/2248)
- [Sursa C++](https://codulluiandrei.ro/rezolvari/pbinfo/2248/cod.cpp)
- [Sursa pe GitHub](https://raw.githubusercontent.com/codulluiandrei/pbinfo/main/pbinfo-2248/main.cpp)
- [Cursuri de informatică pentru BAC](https://codulluiandrei.ro/academia/info-curs/pachet-cpp/)
