👤

Fie șirul 1, 2, 3, 4, 5, 6, 7, ..., n, ... care îndeplinește regula de mai jos:



1 face parte din mulțimea numerotată cu 1.

2, 3 fac parte din mulțimea numerotată cu 2.

4, 5, 6 fac parte din mulțimea numerotată cu 3.

7, 8, 9, 10 fac parte din mulțimea numerotată cu 4



Iar n face parte din mulțimea numerotată cu m.

Cerința

Știind numarul n, să se afle m.

Date de intrare

Programul citește de la tastatură n.

Date de ieșire

Programul va afișa pe ecran numărul m, reprezentând numărul mulțimii din care face parte n.

Restricții și precizărin, m sunt numere naturale1 ≤ n, m ≤ 2*10^9+1


Răspuns :

Am atasat 2 imagini cu explacitiile si 2 notepaduri cu codurile.

Rezolvare 1 - folosind formula matematica:


#include <iostream>

#include <cmath>

using namespace std;

int main()

{

   long long n, delta, rasp;

   cin >> n;

   delta = 1 + 8 * (n - 1);

   rasp = (1 + sqrt(delta)) / 2;

   cout << rasp;

   return 0;

}

Rezolvare 2 - folosind dinamica:

#include <iostream>

using namespace std;

int main()

{

   long long n, c = 1;

   cin >> n;

   while (n - c > 0) n -= c, ++c;

   cout << c;

   return 0;

}

Vezi imaginea АНОНИМ
Vezi imaginea АНОНИМ
Vezi imaginea АНОНИМ
Vezi imaginea АНОНИМ
Vă mulțumim că ați vizitat site-ul nostru dedicat Informatică. Sperăm că informațiile oferite v-au fost de ajutor. Dacă aveți întrebări sau nevoie de asistență suplimentară, nu ezitați să ne contactați. Ne vedem curând și nu uitați să ne adăugați la marcaje!


Go Studies: Alte intrebari