This commit is contained in:
2019-03-15 20:12:51 +08:00
parent 81ef5697f2
commit 75482b665d
30 changed files with 3562 additions and 1 deletions

841
main.cpp Normal file
View File

@ -0,0 +1,841 @@
/*
* Greedy Snake
* Դ<><D4B4><EFBFBD><EFBFBD>Դ<EFBFBD><D4B4>δ֪
* ע<><D7A2>: <20>dz<EFBFBD>
* <20>ӹ<EFBFBD><D3B9><EFBFBD>ׯԣ<D7AF>F
* v1.10<EFBFBD><EFBFBD>
* 1.<2E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¿<EFBFBD>һ<EFBFBD>ֺ<EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* 2.<2E>޸<EFBFBD><DEB8>˲˵<CBB2>
* 3.<2E><><EFBFBD><EFBFBD><EFBFBD>˲˵<CBB2><CBB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* 4.<2E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5>ʾ<EFBFBD><CABE>bug
* v1.20<EFBFBD><EFBFBD>
* 1.ȫ<><C8AB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ע<EFBFBD><D7A2>
* 2.<2E>Ż<EFBFBD><C5BB>˳<EFBFBD><CBB3><EFBFBD>
* v1.30<EFBFBD><EFBFBD>
* 1.<2E><><EFBFBD><EFBFBD><EFBFBD>˵ȴ<CBB5><C8B4><EFBFBD><EFBFBD><EFBFBD>
* v2.00<EFBFBD><EFBFBD>
* 1.<2E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѡ<EFBFBD>ء<EFBFBD><D8A1><EFBFBD>־<EFBFBD><D6BE><EFBFBD><EFBFBD>
*/
#include<iostream>
#include<Windows.h>
#include<ctime>
#include<cstdlib>
#include<conio.h>//<2F>DZ<EFBFBD>׼<EFBFBD><D7BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E2BAAF>
#include<map>
#include<vector>
#include"screen.h"
using namespace std;
inline int min(int a,int b){return a<b?a:b;}
const int UP=72;//<2F><>
const int DOWN=80;//<2F><>
const int LEFT=75;//<2F><>
const int RIGHT=77;//<2F><>
int n=4;//n<><6E><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,<2C><>ʼΪ2<CEAA><32>
int guan;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD>ٶ<EFBFBD>
int T;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD>ߵ<EFBFBD><DFB5>ƶ<EFBFBD><C6B6>ٶ<EFBFBD>
int t1,t2,t3=0;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
int HP=5;//<2F><>¼<EFBFBD>ߵ<EFBFBD><DFB5><EFBFBD><EFBFBD><EFBFBD>ֵ,<2C><>ʼ<EFBFBD><CABC>Ϊ6
int food=0;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD>Ե<EFBFBD><D4B5><EFBFBD>ʳ<EFBFBD><CAB3><EFBFBD><EFBFBD>
int x=12,y=12;//<2F><>¼ʳ<C2BC><CAB3><EFBFBD><EFBFBD><EFBFBD>ڵ<EFBFBD>
int shb;//<2F><>¼Ŀ<C2BC><EFBFBD><EAB3A4>
int gid;//<2F><>¼<EFBFBD>ؿ<EFBFBD><D8BF>ı<EFBFBD><C4B1><EFBFBD>
int maxg;
struct snake
{
int x;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ں<EFBFBD><DABA><EFBFBD><EFBFBD><EFBFBD>
int y;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
int direction;//<2F><><EFBFBD>߷<EFBFBD><DFB7><EFBFBD>
}p[81];
struct score
{
int shb,now;
score()
{
shb=50;
now=-1;
}
};
map<int,score> score;
struct screen_information
{
int food;//<2F><>screen_information[x][y]<5D><><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD>ʳ<EFBFBD><CAB3><EFBFBD>еĻ<D0B5>foodΪ1
int star;//<2F><>screen_information[x][y]<5D><><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǵĻ<C7B5>ֵΪ1
int barrier;//<2F><>screen_information[x][y]<5D><><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ϰ<EFBFBD><CFB0><EFBFBD><EFBFBD>еĻ<D0B5>ֵΪ1
}screen_information[26][22];
inline void c(int k)//<2F>ı<EFBFBD><C4B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɫ
{
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), k);
}
inline int time()//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ
{
return clock()/CLOCKS_PER_SEC;
}
inline int random()//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ
{
srand(t1+rand());//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӳ<EFBFBD>ʼ<EFBFBD><CABC>
return rand();//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}
void start();//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Լ<EFBFBD><D4BC><EFBFBD>ǽ
void guanka();//<2F><><EFBFBD><EFBFBD>ѡ<EFBFBD><D1A1><EFBFBD>ؿ<EFBFBD><D8BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݹؿ<DDB9><D8BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߵ<EFBFBD><DFB5>ƶ<EFBFBD><C6B6>ٶ<EFBFBD>
void data();//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC>Ϸ<EFBFBD>ĸ<EFBFBD><C4B8><EFBFBD>״̬<D7B4><CCAC><EFBFBD><EFBFBD>
int game();//<2F><>Ϸ<EFBFBD><CFB7><EFBFBD><EFBFBD>
void show();//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϰ<EFBFBD><CFB0><EFBFBD><EFBFBD>Լ<EFBFBD>ʳ<EFBFBD><CAB3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ҩˮ<D2A9>Լ<EFBFBD><D4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><D0B6><EFBFBD>Ϸ<EFBFBD>ĸ<EFBFBD><C4B8>ֲ<EFBFBD><D6B2><EFBFBD><EFBFBD><EFBFBD>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7>Ե<EFBFBD><D4B5><EFBFBD><EFBFBD>Ƿ<EFBFBD>ײǽ<D7B2><C7BD>
void key();//<2F><><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD>
void qp();//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ļ
int input();//<2F><><EFBFBD><EFBFBD>ѡ<EFBFBD><D1A1>ҳ<EFBFBD><D2B3>
void load_file(int id)//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ؿ<EFBFBD><D8BF><EFBFBD><EFBFBD><EFBFBD>
{
n=4;//n<><6E><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,<2C><>ʼΪ3<CEAA><33>
if(HP!=-1) HP=6;//<2F><>¼<EFBFBD>ߵ<EFBFBD><DFB5><EFBFBD><EFBFBD><EFBFBD>ֵ,<2C><>ʼ<EFBFBD><CABC>Ϊ6
p[0].x=6; //
p[0].y=11; //
p[0].direction=RIGHT; //
p[1].x=4; //
p[1].y=11; // <20><>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD>ú<EFBFBD><C3BA>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD>
p[1].direction=RIGHT; //
p[2].x=2; //
p[2].y=11; //
p[2].direction=RIGHT; //
char add[30];
sprintf(add,"files/%d.txt",id);
FILE *f=fopen(add,"r");
static int t;
for(int i=0;i<22;i++)
for(int j=0;j<26;j++)
{
fscanf(f,"%d",&t);
switch(t)
{
case 1:screen_information[j][i].barrier=1;
gotoxy(2*(j+1),i+1);
SetColor(12);cout<<"<EFBFBD><EFBFBD>";
break;
case 2:screen_information[j][i].food=1;
gotoxy(2*(j+1),i+1);
SetColor(11);cout<<"<EFBFBD><EFBFBD>";
break;
case 3:screen_information[j][i].star=1;
gotoxy(2*(j+1),i+1);
SetColor(14);cout<<"<EFBFBD><EFBFBD>";
break;
}
}
shb=score[id].shb;
fclose(f);
}
int main()
{
SetLetter(936);
SetTitle("̰<EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
hm();//<2F><><EFBFBD>ع<EFBFBD><D8B9><EFBFBD>
start();//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Լ<EFBFBD><D4BC><EFBFBD>ǽ
while(1)
{
guanka();//<2F><><EFBFBD><EFBFBD>ѡ<EFBFBD><D1A1><EFBFBD>ؿ<EFBFBD><D8BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݹؿ<DDB9><D8BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߵ<EFBFBD><DFB5>ƶ<EFBFBD><C6B6>ٶ<EFBFBD>
game();//<2F><>Ϸ<EFBFBD><CFB7><EFBFBD><EFBFBD>
score[gid].now=n;
if(n==score[gid].shb)
{
if(gid+1<maxg&&score[gid+1].now==-1) score[gid+1].now=0;
if(gid+2<maxg&&score[gid+2].now==-1) score[gid+2].now=0;
}
FILE *f=fopen("snake.his","w");
fprintf(f,"%d\n",maxg);
for(int i=1;i<=maxg;i++) fprintf(f,"%d %d %d\n",i,score[i].shb,score[i].now);
fclose(f);
}
}
inline void start()//<2F><><EFBFBD><EFBFBD>ǽ/<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Լ<EFBFBD><D4BC><EFBFBD>ǽ
{
static int tt1,wait;
wait=1;
SetScreenSize(100,36);
int i,j,z;
for(i=0;i<25;i++)
{
cout<<" ";
}
c(14);//<2F><><EFBFBD>ɻ<EFBFBD>ɫ
for(z=0;z<20;z++)
{
if(kbhit())
{
getch();
wait=0;
goto next;
}
if(z>=0)
{
gotoxy(12,z);
cout<<" ~--______-~ ~-___-~\" ";
}
if(z>=1)
{
gotoxy(12,z-1);
cout<<" ~-_ _-~ ~-_ _-~ ";
}
if(z>=2)
{
gotoxy(12,z-2);
cout<<" \\ ~-____-~ _-~ ~-_ ~-_-~ / ";
}
if(z>=3)
{
gotoxy(12,z-3);
cout<<" ( ( _-~ _--_ ~-_ _/ | ";
}
if(z>=4)
{
gotoxy(12,z-4);
cout<<" / / _-~ ~-_ | | ";
}
if(z>=5)
{
gotoxy(12,z-5);
cout<<" / / _----_ \\ \\ ";
}
if(z>=6)
{
gotoxy(12,z-6);
cout<<" / / \\ \\ ";
}
if(z>=7)
{
gotoxy(12,z-7);
cout<<" / / \\\\ ";
}
if(z>=8)
{
gotoxy(12,z-8);
cout<<" / / \\\\ ";
}
if(z>=9)
{
gotoxy(12,z-9);
cout<<" / / \\ ";
}
if(z>=10)
{
gotoxy(12,z-10);
cout<<" | | \\ ";
}
if(z>=11)
{
gotoxy(12,z-11);
cout<<" \\ \\ ";
}
if(z>=12)
{
gotoxy(12,z-12);
cout<<" \\_______ \\ ";
}
if(z>=13)
{
gotoxy(12,z-13);
cout<<" \\____|__________/ \\ ";
}
if(z>=14)
{
gotoxy(12,z-14);
cout<<"\\/ /~ \\_/ \\ ";
}
if(z>=15)
{
gotoxy(12,z-15);
cout<<" _|__| O| ";
}
for(int k=15;k<z;k++)
{
gotoxy(12,k-15);
cout<<" ";
}
Sleep(30);
}
gotoxy(0,25);
cout<<" Greedy-- <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><> <20><> <20><> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> V2.00<EFBFBD><EFBFBD>"<<endl;
cout<<" <20><> <20><> <20><> <20><> <20><> <20><><EFBFBD><EFBFBD> <20><> <20><> <20><> "<<endl;
cout<<" <20><> <20><> <20><> <20><> <20><> <20><> <20><> <20><> <20><> "<<endl;
cout<<" <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><> <20><> <20><> <20><> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"<<endl;
cout<<" <20><> <20><> <20><> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><> <20><> "<<endl;
cout<<" <20><> <20><> <20><> <20><><EFBFBD><EFBFBD> <20><> <20><> <20><> <20><> <20><> "<<endl;
cout<<" <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><> <20><> <20><> <20><> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"<<endl;//̰<><CCB0><EFBFBD><EFBFBD>
tt1=clock();
while(clock()-tt1<2000)
{
if(kbhit())
{
getch();
wait=0;
goto next;
}
}
next:system("cls");
c(0);//<2F><><EFBFBD>ɺڵ<C9BA>ɫ
gotoxy(0,0);
for(i=0;i<25;i++)
{
cout<<" ";
}
c(252);//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɫ
for(i=0,j=60;i<60;i++,j--)//if<69><66>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><ECB2BD><EFBFBD><EFBFBD>
{
if(kbhit())
{
getch();
wait=0;
}
if(j>20)
{
gotoxy(2*(j-21),0);
cout<<"<EFBFBD><EFBFBD>";//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB>
}
if(i<40)
{
gotoxy(2*i,23);
cout<<"<EFBFBD><EFBFBD>";// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB>
}
if(j>22&&j<45)
{
gotoxy(78,j-22);
cout<<"<EFBFBD>~";//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ұ<EFBFBD><D2B1><EFBFBD>
}
if(j>22&&j<45)
{
gotoxy(0,i-15);
cout<<"<EFBFBD>~";//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB>
}
if(i>37&&i<60)
{
gotoxy(54,i-37);
Sleep(10*wait);
cout<<"<EFBFBD>~";//<2F><><EFBFBD><EFBFBD><EFBFBD>м<EFBFBD><D0BC><EFBFBD><EFBFBD><EFBFBD>
}
Sleep(30*wait);
}
gotoxy(56,11);
cout<<"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"; //56
gotoxy(19,0);
c(14);//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɫ
cout<<"| | |̰ <20><> <20><>| | |";//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
gotoxy(56,2);
cout<<"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD>";
gotoxy(75,2);
cout<<"<EFBFBD><EFBFBD>";
gotoxy(56,4);
cout<<"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><EFBFBD>";
gotoxy(56,6);
cout<<"<EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD><EFBFBD>ȣ<EFBFBD>";
gotoxy(56,8);
cout<<"<EFBFBD>ѳ<EFBFBD>ʳ<EFBFBD>";
gotoxy(56,10);
cout<<"<EFBFBD><EFBFBD> <20><>";
gotoxy(64,12);
cout<<"<EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD>";
gotoxy(56,13);
cout<<"<EFBFBD><EFBFBD><EFBFBD>ϣ<EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>ϣ<EFBFBD><CFA3><EFBFBD>";
gotoxy(56,14);
cout<<"<EFBFBD><EFBFBD><EFBFBD>£<EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>ң<EFBFBD><D2A3><EFBFBD>";
gotoxy(56,15);
cout<<"<EFBFBD><EFBFBD>ͣ/<2F><>ʼ<EFBFBD><CABC>ȷ<EFBFBD><C8B7><EFBFBD><EFBFBD> ";
gotoxy(56,16);
cout<<"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѡ<EFBFBD><EFBFBD> <20><>Esc<73><63>";
gotoxy(64,18);
cout<<"ע<EFBFBD>";
gotoxy(56,19);
cout<<"1:ײ<><D7B2><EFBFBD>ϰ<EFBFBD><CFB0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǽ<EFBFBD><C7BD><EFBFBD><EFBFBD>";
gotoxy(56,20);
cout<<" ֵ<><D6B5>һ ";
gotoxy(56,21);
cout<<"2:<3A>Ե<EFBFBD>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5>һ";
}
int input()
{
vector<int> can;
FILE *f=fopen("snake.his","r");
int n,now,a,b,c,passed=0;
fscanf(f,"%d",&n);
maxg=n;
for(int i=0;i<n;i++)
{
fscanf(f,"%d%d%d",&a,&b,&c);
score[a].shb=b;
score[a].now=c;
if(c>=0&&c<b) can.push_back(a);
if(c>=b) passed++;
}
if(passed==n)
{
gotoxy(2,24);
SetColor(14);
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>йؿ<EFBFBD>\n");
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>http://download.csdn.net/download/alphago_zero/10223607<30><37><EFBFBD>عؿ<D8B9><D8BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\n");
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӣ<EFBFBD>[Y/N] ");
char c=getch();
if(c=='y'||c=='Y')
{
system("start http://download.csdn.net/download/alphago_zero/10223607");
while(1);
}
else exit(0);
}
int now_page=0,i;
now=0;
SetColor(10);
gotoxy(2,24);//+25
cout<<"<EFBFBD><EFBFBD>ѡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>";
for(i=0;i<5&&now_page*5+i<can.size();i++)
{
gotoxy(0,i+25);
if(now_page*5+i==now) SetColor(202);
else SetColor(10);
printf("%10d",can[now_page*5+i]);
}
while(1)
{
if(kbhit())
{
switch(getch())
{
case (int)'\r':goto end;
case 224:
switch(getch())
{
case UP:
if(now>0)
{
now--;
now_page=now/5;
}
break;
case DOWN:
if(now<can.size()-1)
{
now++;
now_page=now/5;
}
break;
case LEFT:
if(now>=5)
{
now-=5;
now_page=now/5;
}
break;
case RIGHT:
if(now<can.size()-1)
{
now=min(now+5,can.size()-1);
now_page=now/5;
}
break;
}
}
SetColor(12);
gotoxy(0,24);
for(int i=0;i<6;i++) cout<<" "<<endl;
for(i=0;i<5&now_page*5+i<can.size();i++)
{
gotoxy(0,i+25);
if(now_page*5+i==now) SetColor(202);
else SetColor(10);
printf("%10d",can[now_page*5+i]);
}
}
}
end:
fclose(f);
SetColor(12);
gotoxy(0,24);
for(int i=0;i<6;i++) cout<<" "<<endl;
return gid=can[now];
}
inline void guanka()//<2F><><EFBFBD><EFBFBD>ѡ<EFBFBD><D1A1><EFBFBD>ؿ<EFBFBD><D8BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݹؿ<DDB9><D8BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߵ<EFBFBD><DFB5>ƶ<EFBFBD><C6B6>ٶ<EFBFBD>
{
qp();
static char t;
while(1)
{
gotoxy(15,3);
c(14);
cout<<"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٶ<EFBFBD>(1-6)<29><> ";
t=getch();
guan=t-'0';
if(guan==0) //<2F>ж<EFBFBD><D0B6>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>
{
gotoxy(15,3);
c(12);//<2F><><EFBFBD>ɺ<EFBFBD>ɫ
cout<<" <20><><EFBFBD><EFBFBD><EFBFBD>к<EFBFBD><D0BA><EFBFBD><EFBFBD>̣<EFBFBD><CCA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>";
Sleep(500);
gotoxy(15,3);
cout<<" ";
HP=-1;
continue;//<2F><><EFBFBD><EFBFBD>ѡ<EFBFBD>ٶȴ<D9B6>
}
if(guan<7&&guan>0) break;//<2F>ж<EFBFBD><D0B6>ٶ<EFBFBD><D9B6>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>
gotoxy(15,5);
cout<<"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>";
Sleep(800);
gotoxy(15,5);
cout<<" ";
}
gotoxy(15,3);
cout<<" ";
switch(guan)
{
case 1:{T=600;break;}//
case 2:{T=400;break;}//
case 3:{T=200;break;}// <20><><EFBFBD><EFBFBD><EFBFBD>ٶ<EFBFBD><D9B6><EFBFBD><EFBFBD><EFBFBD>ߵ<EFBFBD><DFB5>ƶ<EFBFBD><C6B6>ٶ<EFBFBD>
case 4:{T=150;break;}//
case 5:{T=100;break;}//
case 6:{T=60;break;}//
}
qp();//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ļ
load_file(input());
}
inline void data()//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD>ж<EFBFBD><D0B6><EFBFBD>Ϸ<EFBFBD>ĸ<EFBFBD><C4B8><EFBFBD>״̬<D7B4><CCAC><EFBFBD><EFBFBD>
{
gotoxy(66,2);
cout<<" ";
gotoxy(66,2);
c(12);//<2F><><EFBFBD>ɺ<EFBFBD>ɫ
cout<<t1;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
gotoxy(59,10);
printf("%4d",gid);
switch (HP)
{
case 1:
gotoxy(65,4);
c(10);//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɫ
cout<<"<EFBFBD>x";
c(12);//<2F><><EFBFBD>ɺ<EFBFBD>ɫ
cout<<"<EFBFBD>y<EFBFBD>z<EFBFBD>|<7C>}<7D>~";
break;
case 2:
gotoxy(65,4);
c(10);//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɫ
cout<<"<EFBFBD>x<EFBFBD>y";
c(12);//<2F><><EFBFBD>ɺ<EFBFBD>ɫ
cout<<"<EFBFBD>z<EFBFBD>|<7C>}<7D>~";
break;
case 3:
gotoxy(65,4);
c(10);//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɫ
cout<<"<EFBFBD>x<EFBFBD>y<EFBFBD>z";
c(12);//<2F><><EFBFBD>ɺ<EFBFBD>ɫ
cout<<"<EFBFBD>|<7C>}<7D>~";
break;
case 4:
gotoxy(65,4);
c(10);//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɫ
cout<<"<EFBFBD>x<EFBFBD>y<EFBFBD>z<EFBFBD>|";
c(12);//<2F><><EFBFBD>ɺ<EFBFBD>ɫ
cout<<"<EFBFBD>}<7D>~";
break;
case 5:
gotoxy(65,4);
c(10);//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɫ
cout<<"<EFBFBD>x<EFBFBD>y<EFBFBD>z<EFBFBD>|<7C>}";
c(12);//<2F><><EFBFBD>ɺ<EFBFBD>ɫ
cout<<"<EFBFBD>~";
break;
case 6:
gotoxy(65,4);
c(10);//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɫ
cout<<"<EFBFBD>x<EFBFBD>y<EFBFBD>z<EFBFBD>|<7C>}<7D>~";
break;
default:
gotoxy(65,4);
c(10);//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɫ
cout<<"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģʽ <20><>";
break;
}
gotoxy(66,6);
c(12);//<2F><><EFBFBD>ɺ<EFBFBD>ɫ
cout<<n<<"/"<<shb;//<2F><><EFBFBD><EFBFBD><EFBFBD>ߵĵ<DFB5>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>
gotoxy(66,8);
cout<<food;//<2F><><EFBFBD><EFBFBD><EFBFBD>ߵ<EFBFBD>ǰ<EFBFBD>Ѿ<EFBFBD><D1BE>Ե<EFBFBD>ʳ<EFBFBD><CAB3>
}
inline void qp()//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ļ
{
SetColor(15);
static int i;
for(i=1;i<23;i++)
{
gotoxy(2,i);
cout<<" ";
}
for(int i=0;i<22;i++)
for(int j=0;j<26;j++)
{
screen_information[j][i].food=0;//<2F><>ʳ<EFBFBD><CAB3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
screen_information[j][i].barrier=0;//<2F><><EFBFBD>ϰ<EFBFBD><CFB0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
screen_information[j][i].star=0;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}
}
inline void show()//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϰ<EFBFBD><CFB0><EFBFBD><EFBFBD>Լ<EFBFBD>ʳ<EFBFBD><CAB3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ҩˮ<D2A9>Լ<EFBFBD><D4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><D0B6><EFBFBD>Ϸ<EFBFBD>ĸ<EFBFBD><C4B8>ֲ<EFBFBD><D6B2><EFBFBD>
{
static int a,b,e,f,i; //a<><61>b<EFBFBD><62><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾС<CABE><D0A1><EFBFBD>ǵ<EFBFBD><C7B5><EFBFBD><EFBFBD><EFBFBD> c<><63>d<EFBFBD><64><EFBFBD><EFBFBD><EFBFBD>ϰ<EFBFBD><CFB0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
if(screen_information[x][y].food==0)//<2F>ж<EFBFBD>ʳ<EFBFBD><CAB3><EFBFBD>Dz<EFBFBD><C7B2>DZ<EFBFBD><C7B1>Ե<EFBFBD>
{
while(1)
{
x=random()%26;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
y=random()%22;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
if(screen_information[x][y].barrier==0&&screen_information[x][y].star==0) break;//<2F><><EFBFBD>˴<EFBFBD><CBB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ԫ<EFBFBD><D4AA><EFBFBD>Dz<EFBFBD><C7B2><EFBFBD>Ч
}
screen_information[x][y].food=1;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʳ<EFBFBD><CAB3>
gotoxy(2*(x+1),y+1);//<2F><>λ<EFBFBD><CEBB>ʳ<EFBFBD><CAB3><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD>λ<EFBFBD><CEBB>
c(11);//<2F><><EFBFBD>ɻ<EFBFBD>ɫ
cout<<"<EFBFBD><EFBFBD>";//<2F><>ӡ<EFBFBD><D3A1>ʳ<EFBFBD><CAB3>
}
if(t1/20>0&&t1%12==0&&t1>t3&&screen_information[(p[0].x-1)/2][p[0].y-1].food==0&&screen_information[(p[0].x-1)/2][p[0].y-1].star==0)
{
while(1)
{
e=random()%26;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
f=random()%22;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
if(screen_information[e][f].food==0&&screen_information[e][f].star==0) break;//<2F><><EFBFBD>˴<EFBFBD><CBB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ԫ<EFBFBD><D4AA><EFBFBD>Dz<EFBFBD><C7B2><EFBFBD>Ч
}
gotoxy(2*(e+1),f+1);//<2F><>λ<EFBFBD><CEBB><EFBFBD>ϰ<EFBFBD><CFB0><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD>λ<EFBFBD><CEBB>
screen_information[e][f].barrier=1;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϰ<EFBFBD><CFB0><EFBFBD>
c(12);//<2F><><EFBFBD>ɻ<EFBFBD>ɫ
cout<<"<EFBFBD>~";//<2F><>ӡ<EFBFBD><D3A1><EFBFBD>ϰ<EFBFBD><CFB0><EFBFBD>
t3=t1;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϰ<EFBFBD><CFB0><EFBFBD>
if(HP<7)
{
gotoxy(18,24);
c(15);//<2F><><EFBFBD>ɰ<EFBFBD>ɫ
cout<<"<EFBFBD><EFBFBD>ܰ<EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѡ<EFBFBD>ٶȵ<EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0<EFBFBD><EFBFBD><EFBFBD>Կ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģʽ";
}
}
if(t1/25>0&&t1%15==0&&t1>t3&&screen_information[(p[0].x-1)/2][p[0].y-1].food==0&&screen_information[(p[0].x-1)/2][p[0].y-1].barrier==0)//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>dz<EFBFBD><C7B3>ֵļ<D6B5><C4BC><EFBFBD>
{
while(1)
{
a=random()%26;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
b=random()%22;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
if(screen_information[a][b].barrier==0&&screen_information[a][b].food==0) break;//<2F><><EFBFBD>˴<EFBFBD><CBB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ԫ<EFBFBD><D4AA><EFBFBD>Dz<EFBFBD><C7B2><EFBFBD>Ч
}
screen_information[a][b].star=1;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>С<EFBFBD><D0A1><EFBFBD>ǣ<EFBFBD><C7A3>Ե<EFBFBD><D4B5><EFBFBD><EFBFBD>dz<EFBFBD><C7B3>ȼ<EFBFBD>1<EFBFBD><31>
gotoxy(2*(a+1),b+1);//<2F><>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD>dz<EFBFBD><C7B3>ֵ<EFBFBD>λ<EFBFBD>ã<EFBFBD><C3A3>Ե<EFBFBD><D4B5><EFBFBD><EFBFBD>dz<EFBFBD><C7B3>ȼ<EFBFBD>1<EFBFBD><31>
c(14);//<2F><><EFBFBD>ɻ<EFBFBD>ɫ
cout<<"<EFBFBD><EFBFBD>";//<2F><>ӡ<EFBFBD><D3A1><EFBFBD><EFBFBD><EFBFBD>ǣ<EFBFBD><C7A3>Ե<EFBFBD><D4B5><EFBFBD><EFBFBD>dz<EFBFBD><C7B3>ȼ<EFBFBD>1<EFBFBD><31>
t3=t1;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϰ<EFBFBD><CFB0><EFBFBD>
if(HP<7)
{
gotoxy(18,24);
cout<<" ";
}
}
for(i=0;i<n;i++)
{
if(screen_information[(p[i].x-1)/2][p[i].y-1].food==1)//<2F>ж<EFBFBD><D0B6><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7>Ե<EFBFBD>ʳ<EFBFBD><CAB3>
{
++n;//<2F><><EFBFBD>߳<EFBFBD><DFB3>ȼ<EFBFBD>1
food++;//<2F><>ʳ<EFBFBD><CAB3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1
screen_information[(p[i].x-1)/2][p[i].y-1].food=0;//<2F><>ʳ<EFBFBD><CAB3><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>
break;
}
}
if(screen_information[(p[0].x-1)/2][p[0].y-1].star==1)//<2F>ж<EFBFBD><D0B6><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7>Ե<EFBFBD><D4B5><EFBFBD><EFBFBD><EFBFBD>
{
screen_information[(p[0].x-1)/2][p[0].y-1].star=0;//<2F><><EFBFBD><EFBFBD><EFBFBD>DZ<EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>
if(HP<6)
++HP;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5>1
}
t1=time()-t2;//ˢ<><CBA2><EFBFBD><EFBFBD>Ϸ<EFBFBD><CFB7><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
}
inline void key()//<2F><><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD>
{
static int ch;
if(kbhit())//<2F>ж<EFBFBD><D0B6>Ƿ񰴼<C7B7>
{
ch=getch();
if(ch==224)//<2F>жϰ<D0B6><CFB0><EFBFBD><EFBFBD>Dz<EFBFBD><C7B2>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>
{
ch=getch();
if((ch==72||ch==75||ch==80||ch==77)&&(ch+p[0].direction!=152)&&ch!=p[0].direction) //<2F>жϰ<D0B6><CFB0><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Dz<EFBFBD><C7B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ķ<EFBFBD><C4B7><EFBFBD><EFBFBD><EFBFBD>
p[0].direction=ch;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ǿ͸ı<CDB8><C4B1><EFBFBD>ͷ<EFBFBD><CDB7><EFBFBD><EFBFBD>
else rewind(stdin);
}
else if(ch==13)//<2F>ж<EFBFBD><D0B6>û<EFBFBD><C3BB>Ƿ<EFBFBD><C7B7><EFBFBD>ͣ
{
static clock_t a,b;
a=time();//<2F><>¼<EFBFBD><C2BC>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
gotoxy(20,1);
c(15);//<2F><><EFBFBD>ɰ<EFBFBD>ɫ
cout<<"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ,<2C><>ȷ<EFBFBD><C8B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʼ";
while(1)
{
if(kbhit()&&getch()==13)////<2F>ж<EFBFBD><D0B6>Ƿ񰴼<C7B7><F1B0B4BC><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ
{
gotoxy(20,1);
cout<<" ";//<2F><><EFBFBD><EFBFBD>"<22><><EFBFBD><EFBFBD>ͣ,<2C><>ȷ<EFBFBD><C8B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʼ"<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
break;
}
}
b=time();//<2F><>¼<EFBFBD><C2BC>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
t2+=(b-a);//<2F><><EFBFBD><EFBFBD>ͣ<EFBFBD>ӵ<EFBFBD>t2<74>Ϲ<EFBFBD>t1<74><31>ȥ
}
else if(ch==27)//<2F>ж<EFBFBD><D0B6>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>ѡ<EFBFBD><D1A1>
{
guanka();//<2F><><EFBFBD><EFBFBD>ѡ<EFBFBD><D1A1><EFBFBD>ؿ<EFBFBD><D8BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݹؿ<DDB9><D8BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߵ<EFBFBD><DFB5>ƶ<EFBFBD><C6B6>ٶ<EFBFBD>
game();//<2F><>ʼ<EFBFBD><CABC>Ϸ
}
else rewind(stdin);
}
}
inline int game()
{
static int i,ch;
ch=RIGHT;//<2F><><EFBFBD><EFBFBD>
t2=time();//<2F><>¼<EFBFBD><C2BC>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
while(1)
{
t1=time()-t2;//ˢ<><CBA2><EFBFBD><EFBFBD>Ϸ<EFBFBD><CFB7><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
data();//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC>Ϸ<EFBFBD>ĸ<EFBFBD><C4B8><EFBFBD>״̬<D7B4><CCAC><EFBFBD><EFBFBD>
gotoxy(p[0].x,p[0].y);//ת<><D7AA><EFBFBD><EFBFBD>ͷλ<CDB7><CEBB>
c(12);//<2F>ijɺ<C4B3>ɫ
cout<<"<EFBFBD><EFBFBD>";//<2F><>ӡ<EFBFBD><D3A1>ͷ
for(i=1;i<n-1;i++)
{
gotoxy(p[i].x,p[i].y);//ת<><D7AA><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>λ<EFBFBD><CEBB>
c(14);//<2F>ijɻ<C4B3>ɫ
cout<<"<EFBFBD><EFBFBD>";//<2F><>ӡ<EFBFBD><D3A1><EFBFBD><EFBFBD>
}
gotoxy(p[n-2].x,p[n-2].y);//ת<><D7AA><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0>βλ<CEB2><CEBB>
c(12);//<2F>ijɺ<C4B3>ɫ
cout<<"<EFBFBD><EFBFBD>";//<2F><>ӡ<EFBFBD><D3A1>β
Sleep(T);//<2F><><EFBFBD><EFBFBD><EFBFBD>ߵ<EFBFBD><DFB5>ƶ<EFBFBD><C6B6>ٶ<EFBFBD>
t1=time()-t2;//ˢ<><CBA2><EFBFBD><EFBFBD>Ϸ<EFBFBD><CFB7><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
gotoxy(p[n-2].x,p[n-2].y);//<2F>Ƶ<EFBFBD><C6B5><EFBFBD>β<EFBFBD><CEB2><EFBFBD>ڵ<EFBFBD>
cout<<" ";//<2F><><EFBFBD><EFBFBD><EFBFBD>ϸ<EFBFBD>ѭ<EFBFBD><D1AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>β
for(i=n-1;i>0;i--) p[i]=p[i-1];//<2F>ƶ<EFBFBD><C6B6><EFBFBD>
key();//<2F>û<EFBFBD><C3BB>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
switch (p[0].direction)
{
case UP:{p[0].y-=1;break;}//<2F>ı<EFBFBD><C4B1><EFBFBD>ͷ<EFBFBD><CDB7><EFBFBD><EFBFBD>ƶ<EFBFBD><C6B6><EFBFBD>ͷ
case DOWN:{p[0].y+=1;break;}//<2F>ı<EFBFBD><C4B1><EFBFBD>ͷ<EFBFBD><CDB7><EFBFBD><EFBFBD>ƶ<EFBFBD><C6B6><EFBFBD>ͷ
case LEFT:{p[0].x-=2;break;}//<2F>ı<EFBFBD><C4B1><EFBFBD>ͷ<EFBFBD><CDB7><EFBFBD><EFBFBD>ƶ<EFBFBD><C6B6><EFBFBD>ͷ
case RIGHT:{p[0].x+=2;break;}//<2F>ı<EFBFBD><C4B1><EFBFBD>ͷ<EFBFBD><CDB7><EFBFBD><EFBFBD>ƶ<EFBFBD><C6B6><EFBFBD>ͷ
}
if(p[0].x==0)//<2F><><EFBFBD><EFBFBD>ײ<EFBFBD><D7B2><EFBFBD><EFBFBD>ǽʱ
{
cout<<"\a";
--HP;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5>һ
p[0].x=52;//<2F><><EFBFBD>䴩ǽ
}
if(p[0].x==54)//<2F><><EFBFBD><EFBFBD>ײ<EFBFBD><D7B2><EFBFBD><EFBFBD>ǽʱ
{
cout<<"\a";
--HP;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5>һ
p[0].x=2;//<2F><><EFBFBD>䴩ǽ
}
if(p[0].y==0)//<2F><><EFBFBD><EFBFBD>ײ<EFBFBD><D7B2><EFBFBD><EFBFBD>ǽʱ
{
cout<<"\a";
--HP;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5>һ
p[0].y=22;//<2F><><EFBFBD>䴩ǽ
}
if(p[0].y==23)//<2F><><EFBFBD><EFBFBD>ײ<EFBFBD><D7B2><EFBFBD><EFBFBD>ǽʱ
{
cout<<"\a";
--HP;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5>һ
p[0].y=1;//<2F><><EFBFBD>䴩ǽ
}
for(i=1;i<n-1;i++)
{
if(p[0].x==p[i].x&&p[0].y==p[i].y) i=n+1;//<2F>ж<EFBFBD><D0B6><EFBFBD><EFBFBD>Ƿ<EFBFBD>ײ<EFBFBD><D7B2><EFBFBD><EFBFBD>
}
if(i>=n)//<2F><><EFBFBD><EFBFBD>ײ<EFBFBD><D7B2><EFBFBD>Լ<EFBFBD>
{
cout<<"\a";
HP=0;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}
if(screen_information[(p[0].x-1)/2][p[0].y-1].barrier==1)//<2F><><EFBFBD><EFBFBD><EFBFBD>ϰ<EFBFBD><CFB0><EFBFBD>ʱ
{
cout<<"\a";
--HP;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5>һ
screen_information[(p[0].x-1)/2][p[0].y-1].barrier=0;
}
if(HP==0)
{
gotoxy(65,4);
c(12);//<2F><><EFBFBD>ɺ<EFBFBD>ɫ
cout<<"<EFBFBD>x<EFBFBD>y<EFBFBD>z<EFBFBD>|<7C>}<7D>~";//ˢ<><CBA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ
gotoxy(23,3);
c(9);
cout<<"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>";
gotoxy(23,4);
c(9);
cout<<"<EFBFBD><EFBFBD>";
c(11);
cout<<"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>";
c(9);
cout<<"<EFBFBD><EFBFBD>";
gotoxy(23,5);
c(9);cout<<"<EFBFBD><EFBFBD>";c(11);cout<<"<EFBFBD><EFBFBD>";
c(12);cout<<"<EFBFBD><EFBFBD>";
c(15);//<2F><><EFBFBD>ɰ<EFBFBD>ɫ
cout<<"<EFBFBD><EFBFBD>Ϸ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>";
c(11);cout<<"<EFBFBD><EFBFBD>";c(9);cout<<"<EFBFBD><EFBFBD>";
gotoxy(23,6);
c(9);
cout<<"<EFBFBD><EFBFBD>";
c(11);
cout<<"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>";
c(9);
cout<<"<EFBFBD><EFBFBD>";
gotoxy(23,7);
c(9);
cout<<"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>";
Sleep(3000);//<2F><>ʱ
gotoxy(25,5);
return 1;
}
if(n==shb)
{
gotoxy(23,3);
c(9);
cout<<"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>";
gotoxy(23,4);
c(9);
cout<<"<EFBFBD><EFBFBD>";
c(11);
cout<<"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>";
c(9);
cout<<"<EFBFBD><EFBFBD>";
gotoxy(23,5);
c(9);cout<<"<EFBFBD><EFBFBD>";c(11);cout<<"<EFBFBD><EFBFBD>";
c(15);//<2F><><EFBFBD>ɰ<EFBFBD>ɫ
cout<<"<EFBFBD><EFBFBD>ϲ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>أ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>";
c(11);cout<<"<EFBFBD><EFBFBD>";c(9);cout<<"<EFBFBD><EFBFBD>";
gotoxy(23,6);
c(9);
cout<<"<EFBFBD><EFBFBD>";
c(11);
cout<<"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>";
c(9);
cout<<"<EFBFBD><EFBFBD>";
gotoxy(23,7);
c(9);
cout<<"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>";
Sleep(3000);//<2F><>ʱ
gotoxy(25,5);
return 1;
}
show();//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϰ<EFBFBD><CFB0><EFBFBD><EFBFBD>Լ<EFBFBD>ʳ<EFBFBD><CAB3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ҩˮ<D2A9>Լ<EFBFBD><D4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><D0B6><EFBFBD>Ϸ<EFBFBD>ĸ<EFBFBD><C4B8>ֲ<EFBFBD><D6B2><EFBFBD><EFBFBD><EFBFBD>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7>Ե<EFBFBD><D4B5><EFBFBD><EFBFBD>Ƿ<EFBFBD>ײǽ)
}
return 0;
}