// permutations -!!!!!! DONE !!!!!!! #include #include int index[101]; void main() { ifstream in; in.open("matrix.in"); ofstream out; out.open("matrix.out"); while (1) { for (int i=1; i <= 100; i++) index[i] = i; int N; in >> N; // # of items, <= 100 if (N < 0) break; while (1) { char ch; in >> ch; // bracket if (ch == '(') // read set { char set[101]; for (int i=1; i <= N; i++) in >> set[i]; // skip line char aa[10]; in.getline(aa, 10); // output out << "("; for (i=1; i < N; i++) out << set[ index[i] ] << " "; out << set[ index[N] ] << ")" << endl; break; } else // read array { int temp[100]; for (int i=1; i <= N; i++) // read array in >> temp[i]; // permute, using temp as not to overwrite stuff for (i=1; i <= N; i++) index[i] = temp[ index[i] ]; in >> ch; // other bracket } } } in.close(); out.close(); } Downloader failed! Response object 006~ASP 0159~Buffering Off~Buffering must be on.