👤
Tudorspidy
a fost răspuns

salut

Ma poate ajuta si pe mine cineva cu o problema?


Cerința

Într-un grup sunt n prieteni. Când se întâlnesc se salută, fiecare dând mână cu toți ceilalți. Câte strângeri de mână au loc?
Date de intrare

Programul citește de la tastatură numărul n.
Date de ieșire

Programul va afișa pe ecran valoarea cerută.
Restricții și precizări

1 ≤ n ≤ 1 000 000 000



astept solutii

multumesc



Răspuns :

pentru n=4
A B C D
A (da 3 trei ori mana)
B(de 2 ori mana ,a dat deja cu A)
C( odata,a dat deja cu A,B)
1+2+3
pentru n=3
A B C
A (da de 2 ori mana)
B (odata)
C( deja a dat )
1+2
Observam ca numarul care il cautam e de fapt al n-1 lea termen al sumei lui gauss
suma lui gauss:n(n+1)/2
pentru al n-1 termen :(n-1)n/2
si codul devine:
#include <iostream>
using namespace std;
int main()
{
    long long int n;
    cin>>n;
    cout<<(n-1)*(n)/2;


    return 0;
}