import
java.util.LinkedList;
public
class
Magician {
public
static
void
main(String[] args){
LinkedList<Integer> ll =
new
LinkedList<Integer>();
int
k = 0;
for
(
int
i=0;i<13;i++){
ll.add(0);
}
magician(ll,k);
for
(Integer l : ll) {
System.
out
.print(l +
" "
);
}
}
private
static
void
magician(LinkedList<Integer> ll,
int
k) {
int
j = 1;
int
m=0;
boolean
b =
true
;
for
(
int
i=0;i<ll.size();i++ ){
k += i;
if
(k<ll.size()){
k = small(ll,k,m);
}
else
{
k = big(ll,k,m);
}
ll.set(k, j++);
m = k;
}
}
private
static
int
big(LinkedList<Integer> ll,
int
k,
int
m) {
k -= ll.size();
int
l = k;
for
(
int
n=0;n<l;n++){
if
(ll.get(n) != 0){
k += 1;
}
if
(k > ll.size()){
k -= ll.size();
}
}
for
(
int
n=m;n<ll.size();n++){
if
(ll.get(n) != 0){
k += 1;
}
if
(k > ll.size()){
k = big(ll, k, m);
}
}
for
(
int
n=l;n<=k;n++){
if
(n>=ll.size()){
k -= ll.size();
n -= ll.size();
}
if
(ll.get(n) != 0){
k += 1;
}
}
return
k;
}
private
static
int
small(LinkedList<Integer> ll,
int
k,
int
m) {
int
l = k;
for
(
int
num=m;num<=k;num++){
if
(ll.get(num) != 0){
k += 1;
}
if
(k>ll.size()){
k = big(ll, k, m);
}
if
(num>=ll.size()){
k -= ll.size();
num -= ll.size();
}
}
return
k;
}
}