#include <iostream>
using namespace std;
class vector
{
private:
int len;
int *pvec;
public:
vector(int array[], int size) : len(size)
{
cout<<len<<endl;
pvec = new int[len+1];
for(int i = 0;i<len;i++)
{
pvec[i] = *(array + i);
}
}
template <int N> vector(int (&array)[N]) : vector(array, N) {}
void display()
{
cout<<"[";
for(int i = 0;i<len;i++)
{
cout<<pvec[i];
if(i < len-1)
{
cout<<",";
}
}
cout<<endl;
}
};
int main()
{
int* array1 = new int[20];
vector v1(array1, 20);
int array2[10] = {0};
vector v2(array2);
}
I2luY2x1ZGUgPGlvc3RyZWFtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKY2xhc3MgdmVjdG9yCnsKICAgcHJpdmF0ZToKCiAgICAgIGludCBsZW47CiAgICAgIGludCAqcHZlYzsKCiAgIHB1YmxpYzoKCiAgICAgIHZlY3RvcihpbnQgYXJyYXlbXSwgaW50IHNpemUpIDogbGVuKHNpemUpCiAgICAgIHsKICAgICAgICAgY291dDw8bGVuPDxlbmRsOwogICAgICAgICBwdmVjID0gbmV3IGludFtsZW4rMV07CiAgICAgICAgIGZvcihpbnQgaSA9IDA7aTxsZW47aSsrKQogICAgICAgICB7CiAgICAgICAgICAgIHB2ZWNbaV0gPSAqKGFycmF5ICsgaSk7CiAgICAgICAgIH0KICAgICAgfQoKICAgICAgdGVtcGxhdGUgPGludCBOPiB2ZWN0b3IoaW50ICgmYXJyYXkpW05dKSA6IHZlY3RvcihhcnJheSwgTikge30KCiAgICAgIHZvaWQgZGlzcGxheSgpCiAgICAgIHsKICAgICAgICAgY291dDw8IlsiOwogICAgICAgICBmb3IoaW50IGkgPSAwO2k8bGVuO2krKykKICAgICAgICAgewogICAgICAgICAgICBjb3V0PDxwdmVjW2ldOwogICAgICAgICAgICBpZihpIDwgbGVuLTEpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgY291dDw8IiwiOwogICAgICAgICAgICB9CiAgICAgICAgIH0KICAgICAgICAgY291dDw8ZW5kbDsKICAgICAgfQp9OwoKaW50IG1haW4oKQp7CiAgIGludCogYXJyYXkxID0gbmV3IGludFsyMF07CiAgIHZlY3RvciB2MShhcnJheTEsIDIwKTsKCiAgIGludCBhcnJheTJbMTBdID0gezB9OwogICB2ZWN0b3IgdjIoYXJyYXkyKTsKICAgCn0K