#include <iostream>
#include <vector>
using namespace std;
vector<long long int> execute(int N, int K, int D, vector<int> A);
int main() {
int N, K, D;
std::cin >> N >> K >> D;
std::vector<int> A(N);
for (int& x : A) std::cin >> x;
std::vector<long long int> B = execute(N, K, D, A);
for (std::size_t i = 0; i < B.size(); ++i) {
std::cout << B[i];
if (i + 1 < B.size()) std::cout << " ";
}
std::cout << std::endl;
return 0;
}
vector<long long int> execute(int N, int K, int D, vector<int> A) {
vector<long long int> B(N);
for (int i = 0; i < N; ++i) {
B[i] = 1;
}
for(int l = 0; l < K; l++)
{
for(int i = 0; i < N; i++)
{
B[i] = A[i] * B[i];
}
long long int num = A[N-1];
for(int c = 0; c < D; c++){
for(int i = N-1; i > 0; i--){
A[i] = A[i-1];
}
A[0] = num;
num = A[N-1];
}
}
return B;
}
é da giorni che provo a farlo funzionare ma non capisco dove ho sbagliato.
Qualcuno riesce a dirmi dove sbaglio?