#include<bits/stdc++.h>
#include<windows.h>
#define KEY_DOWN(VK_NONAME) ((GetAsyncKeyState(VK_NONAME) & 0x8000) ? 1 : 0)
using namespace std;
void HideCursor(bool x)
{
CONSOLE_CURSOR_INFO cursorInfo;
cursorInfo.dwSize=1;
cursorInfo.bVisible=x;
SetConsoleCursorInfo(GetStdHandle(STD_OUTPUT_HANDLE), &cursorInfo);
}
bool a[100010];
long long k,t,s,xrjl=15,speed=10,jt=1,man,p;
string k_g;
int main()
{
HideCursor(1);
for(int j=1;j<=xrjl;j++) k_g=k_g+" ";
srand(time(0));
for(int i=1;i<=100000;i++)
{
a[i]=rand()%10;
if(a[i]>1) a[i]=1;
a[i]=!a[i];
}
for(int i=0;i<=20;i++) a[i]=0;
for(int i=1;i<=100000;i++)
{
// for(int j=1;j<=xrjl;j++) cout<<' ';
cout<<k_g<<k<<endl;
cout<<'#';
if(t==1)
{
if(s>50)
for(int j=1;j<=(100-s)/10;j++) cout<<endl;
else for(int j=1;j<=s/10;j++) cout<<endl;
cout<<'_';
}
else cout<<'_';
for(int j=k+2-t;j<=k+xrjl;j++)
{
if(a[j]==0) cout<<' ';
else cout<<a[j];
}
cout<<endl;
for(int j=k;j<=k+xrjl;j++) cout<<a[j];
if(i%speed==0) k++;
if(KEY_DOWN(' ')&&t==0)
{
t=1;
s=100;
}
if(KEY_DOWN('1'))
{
cout<<endl;
system("pause");
}
if(t==1) s--;
if(s<=0) t=0;
if(a[k]==1&&t==0)
{
freopen("goo.sb","r",stdin);
cin>>man;
if(k>man)
{
cout<<endl<<"New Best!"<<endl<<"Score:"<<k;
freopen("goo.sb","w",stdout);
cout<<k;
}
else cout<<endl<<"Score:"<<k;
Sleep(1);
return 114514;
}
if(jt==1)
{
if(k==500) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),0x80);
if(k==520) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),0x70);
if(k==540) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),0xf0);
if(k==1050) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),0x70);
if(k==1070) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),0x80);
if(k==1090) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),0x07);
}
system("cls");
}
}