# PBinfo #632 – Iepuri – Rezolvare C++

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

## Enunț

Cerința
Gigel are p iepuri pe care vrea să-i distribuie în n cuști astfel încât:


toți iepurii să intre în cuști
fiecare cușcă să conțină cel puțin un iepure
să nu existe două cuști cu același număr de iepuri
diferența dintre numărul maxim de iepuri dintr-o cușcă și numărul minim de iepuri dintr-o cușcă să fie minimă

Determinați o modalitate de distribuire a iepurilor în cuști care să respecte condițiile de mai sus.

Date de intrare
Programul citește de la tastatură numerele n și p.

Date de ieșire
Programul va afișa pe ecran n numere naturale, reprezentând numărul de iepuri din fiecare cușcă..

Restricții și precizări

1 ≤ n ≤ 100
1 ≤ p ≤ 1 000 000
pentru toate datele de test există soluție

Exemplu:
Intrare

3 10
Ieșire

2 3 5

## Cod sursă C++

```cpp
#include <iostream>
using namespace std;
int v[105], n, p;
int main(){
	cin >> n >> p;
	for(int i =1 ; i <= n ; ++i)
		v[i] = i, p -= i;
	for(int i =1 ; i <= n ; ++i)
		v[i] += p/n;
	if(p % n != 0)
	{
		int k = p % n;
		for(int i = n ; i > 0 && k ; i --)
			v[i] ++, k --;
	}
	for(int i = 1 ; i <= n ; ++i)
		cout << v[i] << " ";
	return 0;
}
```

## Resurse

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