335
Cerința
Directorul unei şcoli doreşte să premieze la sfârşitul anului şcolar pe cei mai buni elevi la învăţătură. Pentru acest lucru el are de rezolvat două probleme:
1. Să determine câţi elevi vor fi premiaţi dintre cei n ( 2≤n≤700 ) elevi ai şcolii. După discuţii aprinse cu ceilalţi profesori se hotărăşte în Consiliul Profesoral ca numărul premianţilor să fie n-k , unde k este cel mai mare număr pătrat perfect mai mic strict decât n . De exemplu, pentru n=150 , k este 144 (pentru că 144=12*12 ), deci vor fi premiaţi 150– 144 = 6 elevi.
Exemplu
Intrare
35
Ieșire
10 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
#include <bits/stdc++.h>
using namespace std;
int n;
int main(){
cin >> n;
int k = sqrt(n);
if(k * k == n)
k--;
cout << n - k * k << endl;
int nr = k * k;
for(int i = 1; i <= k; ++i, cout << endl)
for(int j = 1; j <= k; ++j)
cout << nr << ' ', nr--;
return 0;
}
Comentarii