http://uva.onlinejudge.org/external/1/120.html
跑了一部分测试数据
#include <iostream>
#include <sstream>
#include <vector>
#include <string>
#include <bitset>
#include <algorithm>
using namespace std;
int main(){
string line;
while(getline(cin,line)){
stringstream ss(line);
int cakes[100];
int i;
for(i = 0; ss >> cakes[i]; ++i){}
for(int i = 0; i < 5 ; ++i){
cout << cakes[i] ;
}
cout << endl;
int n = i;
for(;i >=1 ;--i ){
int *itr = find(cakes,cakes+i,i);
if(itr - cakes != i - 1){
reverse(cakes, itr + 1);
reverse(cakes, cakes + i );
cout << 6 - i << " ";
}
}
cout << "0" << endl;
}
}