Informatică, întrebare adresată de melyingerash, 9 ani în urmă

Fie un vector x de numere intregi. Sa se afiseze toate tripletele de numere consecutive din x,  cu proprietatea ca ele pot reprezenta laturile unui triunghi. In c++. Dau coronita.ex: singurul triplet din vectorul (12, 45, 10, 5, 9, 4, 51) este (10, 5, 9)


artur99: proprietatea de a forma un triunghi e l1+l2>l3 ? unde l1,l2,l3 sunt laturile
artur99: :)) eu nu imi mai aduc aminte :))
artur99: nvm, am gasit pe proprietatea
artur99: pe net*

Răspunsuri la întrebare

Răspuns de artur99
6
#include <iostream>
using namespace std;
int main(){
    int x, a, b, c, i;
    cin>>x;int v[x];
    for(i=0;i<x;i++)cin>>v[i];
    for(i=2;i<x;i++){
        a = v[i-2];
        b = v[i-1];
        c = v[i];
        if((a < b + c)&&(b < a + c)&&(c < a + b))
            cout<<a<<" "<<b<<" "<<c<<"\n";
    }
}

Incognito: o sa postez intrebarea astazi cand esti online
AntiEaglesDavids: cica algoritm de permutare lol. Toate astea, problemele care tin de permutari, aranjamente, combinari si multimi se fac prin Backtracking si sunt cele mai usoare probleme de rezolvat (din cele 4 tehnici de programare)
AntiEaglesDavids: daca nu ar fi elementele pe pozitii consecutive si nu ar fi sortate, tu va trebui sa generezi toate posibilitatile
AntiEaglesDavids: iar daca vectorul are dimensiune mare, in unele probleme, e chiar imposibil sa generezi toate solutiile
AntiEaglesDavids: si vere, nu conteaza limbajul de programare pentru asa ceva. Tu crezi ca "algoritmul de permutari" e diferit ca si concept in php fata de c++? Cam tot acelasi cod il scrii si acolo.
Incognito: am inteles
Incognito: multumesc
AntiEaglesDavids: daca vrei iti pot da codul sa te uiti pe el (chiar daca nu vei intelege mare lucru dar observ ca iti place info si nu strica daca analizezi ceva cod)
Incognito: am postat o intrebare
Incognito: mersi
Alte întrebări interesante