# PBinfo #989 – sumperm – Rezolvare C++

Sursa: Codul lui Andrei
Limbaj: C++
Autor rezolvare: andrei

## Enunț

Cerința
Se dau n cifre zecimale: a1, a2, … , an. Determinaţi suma: \( S = \overline{a_1 a_2 … a_n} + \overline{a_n a_1 … a_{n-1}} + \cdots + \overline{a_2 a_3 … a_n a_1} \), în care fiecare termen este obţinut prin permutarea circulară spre dreapta a cifrelor termenului precedent cu o poziţie.

Date de intrare
Fișierul de intrare sumperm.in conține pe prima linie numărul n, iar pe a doua linie cele n cifre separate prin spații.

Date de ieșire
Fișierul de ieșire sumperm.out va conține pe prima linie numărul S, reprezentând suma calculată.

Restricții și precizări

2 ≤ n ≤ 9

Exemplu:
sumperm.in

3
2 5 4
sumperm.out

1221
Explicație
S=254 + 425 + 542 =1221.

## Cod sursă C++

```cpp
#include <fstream>
using namespace std;
ifstream in("sumperm.in");
ofstream out("sumperm.out");
int main() {
    int n, v[15], S = 0, temp = 0;
    in >> n;
    for (int i = 1; i <= n; i++)
        in >> v[i], S = S + v[i];
    for(int i = 1; i <= n; i++) {
        int var = S + temp;
        v[i] = var % 10;
        temp = var / 10;
    } v[n + 1] = temp;
    for (int i = n + 1; i > 0; i--)
        out << v[i];
    return 0;
}
```

## Resurse

- [Pagina originală](https://codulluiandrei.ro/rezolvari/pbinfo/989)
- [Sursa C++](https://codulluiandrei.ro/rezolvari/pbinfo/989/cod.cpp)
- [Sursa pe GitHub](https://raw.githubusercontent.com/codulluiandrei/pbinfo/main/pbinfo-989/main.cpp)
- [Cursuri de informatică pentru BAC](https://codulluiandrei.ro/academia/info-curs/pachet-cpp/)
