#include <iostream>
#include <vector>
using namespace std;
// Funkcja wczytujaca stopien wielomianu i wspolczynniki
vector<int> wczytajWspolczynniki(int& stopien) {
cout << "Podaj stopien wielomianu: ";
cin >> stopien;
vector<int> a(stopien + 1);
for (int i = stopien; i >= 0; i--) {
cout << "Podaj wspolczynnik a" << i << ": ";
cin >> a[i];
}
return a;
}
// Funkcja obliczajaca wartosc wielomianu algorytmem naiwnym
int obliczWielomian(const vector<int>& a, int stopien, int x) {
int wynik = 0;
for (int i = stopien; i >= 0; i--) {
int potega = 1;
for (int j = 0; j < i; j++) {
potega *= x;
}
wynik += a[i] * potega;
}
return wynik;
}
int main() {
int stopien;
int x = 2;
vector<int> wspolczynniki = wczytajWspolczynniki(stopien);
int W = obliczWielomian(wspolczynniki, stopien, x);
cout << "W(" << x << ") = " << W << endl;
return 0;
}
CiNpbmNsdWRlIDxpb3N0cmVhbT4KI2luY2x1ZGUgPHZlY3Rvcj4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCi8vIEZ1bmtjamEgd2N6eXR1amFjYSBzdG9waWVuIHdpZWxvbWlhbnUgaSB3c3BvbGN6eW5uaWtpCnZlY3RvcjxpbnQ+IHdjenl0YWpXc3BvbGN6eW5uaWtpKGludCYgc3RvcGllbikgewogICAgY291dCA8PCAiUG9kYWogc3RvcGllbiB3aWVsb21pYW51OiAiOwogICAgY2luID4+IHN0b3BpZW47CgogICAgdmVjdG9yPGludD4gYShzdG9waWVuICsgMSk7CgogICAgZm9yIChpbnQgaSA9IHN0b3BpZW47IGkgPj0gMDsgaS0tKSB7CiAgICAgICAgY291dCA8PCAiUG9kYWogd3Nwb2xjenlubmlrIGEiIDw8IGkgPDwgIjogIjsKICAgICAgICBjaW4gPj4gYVtpXTsKICAgIH0KCiAgICByZXR1cm4gYTsKfQoKLy8gRnVua2NqYSBvYmxpY3phamFjYSB3YXJ0b3NjIHdpZWxvbWlhbnUgYWxnb3J5dG1lbSBuYWl3bnltCmludCBvYmxpY3pXaWVsb21pYW4oY29uc3QgdmVjdG9yPGludD4mIGEsIGludCBzdG9waWVuLCBpbnQgeCkgewogICAgaW50IHd5bmlrID0gMDsKCiAgICBmb3IgKGludCBpID0gc3RvcGllbjsgaSA+PSAwOyBpLS0pIHsKICAgICAgICBpbnQgcG90ZWdhID0gMTsKCiAgICAgICAgZm9yIChpbnQgaiA9IDA7IGogPCBpOyBqKyspIHsKICAgICAgICAgICAgcG90ZWdhICo9IHg7CiAgICAgICAgfQoKICAgICAgICB3eW5payArPSBhW2ldICogcG90ZWdhOwogICAgfQoKICAgIHJldHVybiB3eW5pazsKfQoKaW50IG1haW4oKSB7CiAgICBpbnQgc3RvcGllbjsKICAgIGludCB4ID0gMjsKCiAgICB2ZWN0b3I8aW50PiB3c3BvbGN6eW5uaWtpID0gd2N6eXRhaldzcG9sY3p5bm5pa2koc3RvcGllbik7CgogICAgaW50IFcgPSBvYmxpY3pXaWVsb21pYW4od3Nwb2xjenlubmlraSwgc3RvcGllbiwgeCk7CgogICAgY291dCA8PCAiVygiIDw8IHggPDwgIikgPSAiIDw8IFcgPDwgZW5kbDsKCiAgICByZXR1cm4gMDsKfQo=