Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # include <iostream>
- # include <algorithm>
- using namespace std;
- const int D = 5; // distanta minima intre doua cote
- int H[20], C[20], N, corzi, ultima_coarda, corzi_egale, i, j;
- int main() {
- cin >> N;
- for (i=1; i<=N; ++i)
- cin >> H[i];
- for (i=2; i<=N; ++i)
- if (abs(H[i]-H[i-1]) > D)
- C[++corzi] = abs(H[i]-H[i-1]);
- for (i=1; i<corzi; ++i)
- for (j=i+1; j<=corzi; ++j)
- if (C[i] > C[j])
- swap(C[i], C[j]);
- ultima_coarda = C[1];
- for (i=2; i<=corzi; ++i) {
- if (C[i] == ultima_coarda) // cazul in care sunt doar doua corzi egale
- ++i, corzi_egale += 2;
- while (C[i] == ultima_coarda) // cazul in care sunt mai mult de doua corzi egale
- ++i, ++corzi_egale;
- ultima_coarda = C[i];
- }
- cout << corzi_egale;
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement