#include #include #include #define SIZE 50 char stack[10*SIZE]; int ptr[10]; int move(int source, int dest) { ptr[dest]--; stack[ptr[dest]] = stack[ptr[source]]; ptr[source]++; } int insert(int index, char val) { stack[ptr[index]] = val; ptr[index]++; } void init_ptrs() { for (int i=0; i<10; i++) { ptr[i] = i*SIZE; } } int main () { char cur[20]; int cur_sum = 0; int max = 0; init_ptrs(); int k = 1; while (fgets(cur,5,stdin) !=NULL) { if (strlen(cur) < 4 || cur[1] == '1') break; if (cur[1] != ' ') { insert(k,cur[1]); } k++; if (k > 9) k=1; } init_ptrs(); char c; while (c = getchar(), c != '\n'); // skip lines while (c = getchar(), c != '\n'); // skip lines int q, src, dst; while (scanf("move %d from %d to %d\n", &q, &src, &dst) != EOF) { for (int k=0; k