#include <iostream>
#include <vector>
using namespace std;
class hoge{
public:
int *a;
int size;
hoge(int a[],int size):a(a),size(size){}
hoge(hoge& h):a(h.a),size(h.size){}
int sum(){
int s=0;
for(int i =0;i<size;i++)s+=a[i];
return s;
}
};
void push(hoge& h,vector<int>& vec,int value)
{
vec.push_back(value);
h = hoge(vec.data(),value);
}
int main(){
vector<int> a={1,2,3};
hoge huga(a.data(),a.size());
cout<<huga.sum()<<endl;
push(huga,a,4);
cout<<huga.sum()<<endl;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8dmVjdG9yPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKY2xhc3MgaG9nZXsKcHVibGljOgogIGludCAqYTsKICBpbnQgc2l6ZTsKICBob2dlKGludCBhW10saW50IHNpemUpOmEoYSksc2l6ZShzaXplKXt9CiAgaG9nZShob2dlJiBoKTphKGguYSksc2l6ZShoLnNpemUpe30KICBpbnQgc3VtKCl7CiAgICBpbnQgcz0wOwogICAgZm9yKGludCBpID0wO2k8c2l6ZTtpKyspcys9YVtpXTsKICAgIHJldHVybiBzOwogIH0KfTsKCnZvaWQgcHVzaChob2dlJiBoLHZlY3RvcjxpbnQ+JiB2ZWMsaW50IHZhbHVlKQp7Cgl2ZWMucHVzaF9iYWNrKHZhbHVlKTsKCWggPSBob2dlKHZlYy5kYXRhKCksdmFsdWUpOwp9CgppbnQgbWFpbigpewogIHZlY3RvcjxpbnQ+IGE9ezEsMiwzfTsKICBob2dlIGh1Z2EoYS5kYXRhKCksYS5zaXplKCkpOwogIGNvdXQ8PGh1Z2Euc3VtKCk8PGVuZGw7CiAgcHVzaChodWdhLGEsNCk7CiAgY291dDw8aHVnYS5zdW0oKTw8ZW5kbDsKICByZXR1cm4gMDsKfQ==