Cerința
Pentru o serie de activități foarte sofisticate, Gigel are nevoie de un fierăstrău special, alcătuit din mai mulţi dinţi. Un fierăstrău de gradul n
este format din două fierăstraie de gradul n-1
, între care se află un dinte de mărime n
. Un fierăstrău de gradul 1
are un singur dinte, de mărime 1
.
Afișați un fierăstrău de grad n
.
Date de intrare
Programul citește de la tastatură numărul n
.
Date de ieșire
Programul va afișa pe ecran un șir de numere naturale, separate prin câte un spațiu, reprezentând mărimea fiecărui dinte al fierăstrăului.
Restricții și precizări
1 ≤ n ≤ 10
Exemplu
Intrare
3
Ieșire
1 2 1 3 1 2 1
Explicație
Un fierăstrău de grad 3
are la mijloc un dinte de mărime 3
, între două fierăstraie de grad 2
.
Un fierăstrău de grad 2
are la mijloc un dinte de mărime 2
, între două fierăstraie de grad 1
.
Un fierăstrău de grad 1
are un singur dinte, de mărime 1
.
#include <bits/stdc++.h> using namespace std; void dinti(int n) { if(n == 1) cout << 1 << ' '; else { dinti(n-1); cout << n << ' '; dinti(n-1); } } int main() { int n; cin >> n; dinti(n); return 0; }