/* 4. ´ÙÀ½ ÇÁ·Î±×·¥ÀÇ Ãâ·ÂÀ» ½á¶ó. */ #include class GrowArray { int *s; int n; public: GrowArray() { s = new int[2]; n = 2; s[0] = 1; s[1] = 0; } void add(int x) { int m = n + x; int *newS = new int[m]; int i,j; for(i = 0; i < x; i++) { newS[i] = x; } for(j = 0; j < n; j++) { newS[i] = s[j]; i++; } s = newS; n = m; } void subtract(int x) { s = s + x; n = n - x; } void print() { int i = 0; while (s[i] != 0) { printf("%d ",s[i]); i++; } printf("\n"); } }; void main() { int data[5] = { 0, 1, 2, 3, 4 }; GrowArray x; for(int i = 0; i < 5; i++) { x.add(data[i]); x.subtract(data[i]); } x.print(); }