Vă rog ,mă puteți ajuta la acest exercițiu ?
Cerința
Se dau n numere naturale. Aflati daca acestea pot fi laturile unui poligon cu n laturi.
Date de intrare
Programul citește de la tastatură numărul n, iar apoi n numere naturale, separate prin spații.
Date de ieșire
Programul va afișa pe ecran mesajul DA, daca numerele date pot fi laturile unui poligon, altfel se afiseaza mesajul NU.
Restricții și precizări
1 ≤ n ≤ 1000000
cele n numere citite vor fi mai mici decât 1.000.000.000
Exemplul 1:
Intrare
5
1 2 3 4 5
Ieșire
DA
Exemplul 2:
Intrare
4
4 5 10 19
Ieșire
NU
Indicații
Daca una dintre laturi este mai mare sau egala decat suma lungimilor celorlaltor laturi atunci poligonul nu este valid.
Mulțumesc anticipat!!
Răspunsuri la întrebare
Răspuns de
4
SOLUTIA DE 100 PCT
#include <iostream>
using namespace std;
int n, v[1000001];
unsigned long long int sum;
int main() {
cin >> n;
for (int i = 1; i <= n; i++) {
cin >> v[i];
sum += v[i];
}
int sem = 1;
for (int i = 1; i <= n; i++)
if (v[i] >= sum - v[i])
sem = 0;
if (sem == 1)
cout << "DA";
else
cout << "NU";
return 0;
}
andreeadiana98:
mulțumesc mult !!
Alte întrebări interesante
Limba română,
8 ani în urmă
Matematică,
8 ani în urmă
Limba română,
8 ani în urmă
Limba română,
8 ani în urmă
Matematică,
8 ani în urmă
Matematică,
9 ani în urmă
Matematică,
9 ani în urmă
Alte limbi străine,
9 ani în urmă