import java.io.*; import java.util.*; class MyList { static final int MAX_SIZE = 200; static final int BITMAP_SIZE = ((MAX_SIZE / 32)+1); private int size; private int[] data; private int[] bitmap; public MyList() { this.size = 0; this.data = new int[MAX_SIZE]; this.bitmap = new int[BITMAP_SIZE]; this.init(); } void init() { this.size = 0; java.util.Arrays.fill(this.data ,0); java.util.Arrays.fill(this.bitmap,0); } boolean contains(int i) { return 0 != (this.bitmap[i >> 5] & ((int)1 << (i & 31))); } void set(int i) { this.data[this.size++] = i; this.bitmap[i >> 5] |= (1 << (i & 31)); } int get(int i) { return this.data[i]; } void remove(int i) { int j = 0; while (j < this.size && this.data[j] != i) { j++; } if (j < this.size) { for (int k=j;k> 5] &= ~(1 << (i & 31)); } } boolean empty() { return this.size == 0; } void shuffle() { this.init(); for (int i=0;i