0001 int main(int argc, char* argv[]) { 0002 if (2 > argc) { cout << "Usage: " << argv[0] << "<#item>" << endl; return 1; } 0003 //srand(31415926); 0004 srand((uint32_t) time(nullptr)); //随机种子 0005 for (Rank n = atoi(argv[1]); ; ) { 0006 Vector<Rank> SP; 0007 for (Rank r = 1; r < n+1; r++) 0008 SP.insert(r); 0009 SP.unsort(); 0010 print(SP); 0011 Rank r = spCheck(SP); 0012 if (n > r) 0013 printf("Jammed at [%d] = %d\n\n\n", r, SP[r]); 0014 else 0015 { printf("OK\n"); break; } //一旦成功,随即终止 0016 } 0017 return 0; 0018 }