# PBinfo #243 – sir1 – Rezolvare C++

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

## Enunț

Cerinţa
Se consideră şirul 1, 2,1, 3,2,1, 4,3,2,1, ..., în care prima grupă este formată din numărul 1, a doua grupă este formată din numerele 2,1, …, a k-a grupă este formată din numerele k,k-1,...,2,1.

Pentru un număr natural dat n, să se determine al n-lea termen din şir.

Date de intrare
Programul citeşte de la tastatură numărul n

Date de ieşire
Programul va afişa pe ecran numărul x, reprezentând al n-lea termen din şir.

Restricţii şi precizări

1 ≤ n ≤ 1.000.000.000

Exemplu:
Date de intrare

14
Date de ieşire

2

## Cod sursă C++

```cpp
#include <iostream>
using namespace std;
int n , x;
int main(){
	while(cin >> n){
		x = 0;
		while (n>x)
			n -= x, x++;
		if(n==0)
			cout << 1 << endl;
		else
			cout << x-n+1 << endl;
	}
	return 0;
}
```

## Resurse

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