#include <iostream>
#include <cstring>
using namespace std;
struct tablica
{
int roz;
signed int *tab;
tablica():roz(0),tab(0) {}
void dodaj(int nr,signed int wartosc);
};
void tablica::dodaj(int nr,signed int wartosc)
{
signed int *buff=new signed int[roz+1];
memcpy(buff,tab,nr*sizeof(signed int));
buff[nr]=wartosc;
memcpy(buff+nr+1,tab+nr,(roz-nr)*sizeof(signed int));
delete[] tab;
tab=buff;
++roz;
}
int main()
{
tablica T;
T.dodaj(0,3);
for(int i=0;i<T.roz;++i) cout<<T.tab[i]<<' ';
cout<<endl;
T.dodaj(1,5);
T.dodaj(0,1);
for(int i=0;i<T.roz;++i) cout<<T.tab[i]<<' ';
cout<<endl;
T.dodaj(3,6);
T.dodaj(2,4);
T.dodaj(1,2);
T.dodaj(0,0);
for(int i=0;i<T.roz;++i) cout<<T.tab[i]<<' ';
cout<<endl;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8Y3N0cmluZz4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCnN0cnVjdCB0YWJsaWNhCiAgewogICBpbnQgcm96OwogICBzaWduZWQgaW50ICp0YWI7CiAgIHRhYmxpY2EoKTpyb3ooMCksdGFiKDApIHt9CiAgIHZvaWQgZG9kYWooaW50IG5yLHNpZ25lZCBpbnQgd2FydG9zYyk7CiAgfTsKCnZvaWQgdGFibGljYTo6ZG9kYWooaW50IG5yLHNpZ25lZCBpbnQgd2FydG9zYykKICB7CiAgIHNpZ25lZCBpbnQgKmJ1ZmY9bmV3IHNpZ25lZCBpbnRbcm96KzFdOwogICBtZW1jcHkoYnVmZix0YWIsbnIqc2l6ZW9mKHNpZ25lZCBpbnQpKTsKICAgYnVmZltucl09d2FydG9zYzsKICAgbWVtY3B5KGJ1ZmYrbnIrMSx0YWIrbnIsKHJvei1ucikqc2l6ZW9mKHNpZ25lZCBpbnQpKTsKICAgZGVsZXRlW10gdGFiOwogICB0YWI9YnVmZjsKICAgKytyb3o7CiAgfQogIAppbnQgbWFpbigpCiAgewogICB0YWJsaWNhIFQ7CiAgIFQuZG9kYWooMCwzKTsKICAgZm9yKGludCBpPTA7aTxULnJvejsrK2kpIGNvdXQ8PFQudGFiW2ldPDwnICc7CiAgIGNvdXQ8PGVuZGw7CiAgIFQuZG9kYWooMSw1KTsKICAgVC5kb2RhaigwLDEpOwogICBmb3IoaW50IGk9MDtpPFQucm96OysraSkgY291dDw8VC50YWJbaV08PCcgJzsKICAgY291dDw8ZW5kbDsKICAgVC5kb2RhaigzLDYpOwogICBULmRvZGFqKDIsNCk7CiAgIFQuZG9kYWooMSwyKTsKICAgVC5kb2RhaigwLDApOwogICBmb3IoaW50IGk9MDtpPFQucm96OysraSkgY291dDw8VC50YWJbaV08PCcgJzsKICAgY291dDw8ZW5kbDsKICAgcmV0dXJuIDA7CiAgfQ==