Skip to content

Instantly share code, notes, and snippets.

@justecorruptio
Created April 4, 2014 03:49
Show Gist options
  • Save justecorruptio/9967738 to your computer and use it in GitHub Desktop.
Save justecorruptio/9967738 to your computer and use it in GitHub Desktop.
Tiny 2048 in C!
M[16],X=16,W,k;main(){T(system("stty cbreak")
);puts(W&1?"WIN":"LOSE");}K[]={2,3,1};s(f,d,i
,j,l,P){for(i=4;i--;)for(j=k=l=0;k<4;)j<4?P=M
[w(d,i,j++)],W|=P>>11,l*P&&(f?M[w(d,i,k)]=l<<
(l==P):0,k++),l=l?P?l-P?P:0:l:P:(f?M[w(d,i,k)
]=l:0,++k,W|=2*!l,l=0);}w(d,i,j){return d?w(d
-1,j,3-i):4*i+j;}T(i){for(i=X+rand()%X;M[i%X]
*i;i--);i?M[i%X]=2<<rand()%2:0;for(W=i=0;i<4;
)s(0,i++);for(i=X,puts("\e[2J\e[H");i--;i%4||
puts(""))printf(M[i]?"%4d|":" |",M[i]);W-2
||read(0,&k,3)|T(s (1,K[(k>>X)%4]));}//[2048]
@JiaxiangZheng
Copy link

Awesome!

@findo
Copy link

findo commented Jun 27, 2015

Awesome!

@xiaobohaha
Copy link

碉堡了

@jagosw
Copy link

jagosw commented Apr 23, 2016

This is awsome, works well on mac!!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment