#include <iostream>
using namespace std;
int F(int n)
{
int K[100];
K[0] = 1;
K[1] = 1;
K[2] = 2;
for (int i = 3;i <= n;i++)
{
K[i] = K[i - 1] + K[i - 2] + K[i - 3];
}
for (int i = 0;i <= n;i++){
cout << K[i] << ' ';
}
cout << endl;
return K[n];
}
int main()
{
int n;
cin >> n;
int K[n + 1];
K[0] = 1;
K[1] = 1;
K[2] = 2;
for (int i = 3;i <= n;i++)
{
K[i] = K[i - 1] + K[i - 2] + K[i - 3];
}
for (int i = 0;i <= n;i++){
cout << K[i] << ' ';
}
cout << endl;
system("pause");
}
I2luY2x1ZGUgPGlvc3RyZWFtPgoKdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCmludCBGKGludCBuKQp7CiAgICBpbnQgS1sxMDBdOwogICAgS1swXSA9IDE7CiAgICBLWzFdID0gMTsKICAgIEtbMl0gPSAyOwogICAgZm9yIChpbnQgaSA9IDM7aSA8PSBuO2krKykKICAgIHsKICAgICAgICBLW2ldID0gS1tpIC0gMV0gKyBLW2kgLSAyXSArIEtbaSAtIDNdOwogICAgfQogICAgZm9yIChpbnQgaSA9IDA7aSA8PSBuO2krKyl7CiAgICAJY291dCA8PCBLW2ldIDw8ICcgJzsKICAgIH0KICAgIGNvdXQgPDwgZW5kbDsKICAgIHJldHVybiBLW25dOwp9CgppbnQgbWFpbigpCnsKICAgIGludCBuOwogICAgY2luID4+IG47CiAgICBpbnQgS1tuICsgMV07CiAgICBLWzBdID0gMTsKICAgIEtbMV0gPSAxOwogICAgS1syXSA9IDI7CiAgICBmb3IgKGludCBpID0gMztpIDw9IG47aSsrKQogICAgewogICAgICAgIEtbaV0gPSBLW2kgLSAxXSArIEtbaSAtIDJdICsgS1tpIC0gM107CiAgICB9CiAgICBmb3IgKGludCBpID0gMDtpIDw9IG47aSsrKXsKICAgIAljb3V0IDw8IEtbaV0gPDwgJyAnOwogICAgfQogICAgY291dCA8PCBlbmRsOwogICAgc3lzdGVtKCJwYXVzZSIpOwp9