Informatică, întrebare adresată de Utilizator anonim, 9 ani în urmă

Gigel a găsit un șir cu n numere naturale. În fiecare zi Gigel parcurge șirul și când găsește o pereche de elemente consecutive egale o elimină din șir și se oprește. Determinați în câte zile va elimina Gigel elemente din șir și care sunt valorile din șir după eliminări.
IN C++

Răspunsuri la întrebare

Răspuns de boiustef
7

#include <iostream>

#include <fstream>

using namespace std;

int v[25002], b[25002];

int main()

{

   ifstream f("numere2.in");

   ofstream g("numere2.out");

   int n, i, zile=0, j;

   f>> n;

   for (i=1; i<=n; ++i) f >> v[i];

   b[1]=v[1]; j=1;

   for (i=2; i<=n; ++i)

   {

       if (v[i]==b[j]) { --j; ++zile; }

       else { ++j; b[j]=v[i]; }

   }

   g<< zile << "\n";

   for (i=1; i<=j; ++i) g << b[i] << " ";

   return 0;

}

Alte întrebări interesante