• 个人简介

    $\raisebox{0.3em}{\color{fe4c61}{\textsf{glass\_goldfish}}}$pic : \raisebox{0.3em}{:} sweeter\raisebox{0.3em}{{\textsf{sweeter}}}

    ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣀⠀⠤⢄⣀⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⡠⠊⠀⢀⣠⣶⣿⣿⠷⣄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣦⣠⣶⣿⣿⣿⣿⣿⡦⠈⡆⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢰⣿⣿⣿⣿⣿⣿⣿⣿⣿⣄⢸⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣼⣿⣿⣿⣿⣿⣿⣿⣿⣿⢸⡏⡆⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠙⢿⣿⣿⣿⣿⣿⣿⣿⡿⠸⢧⠃⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⣿⣿⣿⣿⣿⣿⡇⠀⡼⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣟⣛⣛⣿⣿⣯⣭⣛⣿⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⡠⠤⣶⣦⣭⣉⣁⠀⠀⠀⣐⣒⣠⣤⣤⣭⣶⣤⣤⣀⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⡠⠒⣹⣷⣶⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⠏⠈⠁⠒⢢⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠁⠀⠀⣼⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⢰⠀⠀⠀⠀⠉⠳⣄⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⠄⠀⠀⢀⡀⢠⣿⣿⠿⠛⠛⡉⢡⠈⣧⠐⢠⣿⠀⢸⡇⠀⠍⢉⠛⠿⢿⣿⡎⣀⣤⡀⡤⢐⣶⠚⢷⡀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⠴⠁⠀⠀⠈⢿⡟⢸⣿⣷⡀⢋⡀⢧⠠⠐⢿⡇⢸⡇⢨⠘⠇⠄⠀⣿⠏⣰⣤⣿⣷⢻⣿⠁⠀⠀⠙⠷⠬⡇⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠊⠁⠀⠀⠀⠀⠀⣸⣧⣿⣿⣿⣷⣈⣥⣶⣶⣿⣿⣿⣿⣿⣿⣿⣿⣷⣶⣯⣄⣿⣿⣿⣿⣸⣿⠀⠀⠀⠀⠀⠀⠘⢦⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢰⣿⣿⣿⣿⣿⠟⠛⠛⠛⠛⠻⣿⣿⣿⣿⣿⣿⠛⠛⠛⢿⣿⣿⣿⣿⣿⣿⣿⡆⠀⠀⠀⠀⠀⢀⣀⣱⡄⠀⠀⠀ ⠀⠀⠀⠀⢀⠄⠀⠀⠀⠀⠀⠀⠀⢀⣀⣠⣿⠏⠀⣿⣿⣿⠀⠀⠀⠀⠀⠀⠈⣿⣿⣿⡿⠃⠀⠀⠀⢺⣿⣿⣿⣿⣿⣿⢿⣃⡦⠀⢀⣴⣿⣿⣿⣿⣿⣆⠀⠀ ⠀⠀⢀⠔⠁⠀⠀⠀⠀⠀⠀⣠⠴⠚⢩⡟⠁⠀⠀⣿⣿⣿⣀⣀⣠⠟⠀⠀⢀⣿⣿⡟⠁⠀⠀⠀⠀⢸⣿⣿⣿⣿⣿⡏⠘⢹⡇⠑⣸⣿⣿⣿⣿⣿⣿⣿⡆⠀ ⠀⢠⠋⠀⠀⠀⠀⠀⠀⠀⠈⠁⠀⠀⠈⠀⠀⠀⢠⣿⣿⣿⣿⣿⠋⠀⠀⣠⣿⣿⡋⠀⠀⠐⠃⠀⠀⠈⣿⣿⣿⣿⣿⠀⠀⢻⡇⠀⠘⢿⣿⣿⣿⣿⣿⣿⣿⡀ ⢀⠃⣀⡀⢀⠀⠀⠀⢀⣤⡶⠟⠁⠀⠀⠀⠀⠀⠸⣿⣿⣿⡿⠁⠀⢀⣾⣿⣿⣿⣷⡀⠀⠀⠀⠀⠀⢀⣿⣿⣿⣿⣿⠀⠀⠘⡇⠀⠀⠈⠹⣿⣿⣿⣿⣿⣿⡇ ⠘⣾⣯⣤⣾⣄⠀⠀⠿⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⣿⣿⠀⠀⠀⠛⠀⠀⢸⣿⣿⣿⣿⡿⠃⠀⠀⠘⣿⣿⣿⣿⣿⠀⠀⠀⠃⠀⠀⠀⣰⣿⣿⣿⣿⣿⣿⠇ ⠀⠹⣾⣿⣿⣿⣆⠀⠀⠻⣄⠀⠀⠀⠀⠀⠀⠀⢀⣿⣿⣿⠀⠀⠀⠀⠀⠀⢸⣿⣿⣿⣿⡇⠀⠀⠀⠀⣿⣿⣿⣿⣿⡀⠀⠀⠀⠀⠀⢰⣿⣿⣿⣿⣿⣿⡿⠀ ⠀⠀⠈⢦⠈⠙⣿⡆⠀⠀⠘⢧⠀⠀⠀⠀⠀⠀⢸⣿⣿⣿⣶⣶⣶⣶⣶⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣇⠀⢀⡆⠀⠀⣾⣿⣿⣿⣿⣿⣿⠃⠀ ⠀⠀⠀⠀⠱⡄⠑⠻⣴⠀⠀⠘⣧⠀⠀⠀⠀⠀⠸⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⢀⣾⠁⠀⠀⣿⣿⣿⣿⣿⣿⠃⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠑⢆⡀⠀⠹⣇⠀⠀⠀⠀⠀⠙⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡃⠀⠀⢰⣿⣿⣿⣿⡿⠁⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠳⡄⠀⢹⣷⣄⠀⠀⠀⠀⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣇⠀⣠⣿⣿⣿⣿⡿⠁⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠐⢄⠈⠦⣿⣿⣿⣦⣤⣤⣾⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⠿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡿⠁⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠑⢄⠈⠻⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⠀⠈⢻⣿⣿⣿⣿⠿⠿⡿⠁⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠑⠦⣘⠻⠟⠛⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡇⠀⢤⣿⣿⡛⠷⠆⠜⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠳⢄⣀⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡇⠀⠘⠻⢿⠗⠂⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣸⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡇⢰⠀⠀⠈⠇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡇⢸⣇⠀⠀⢀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡇⢸⣿⣆⠀⡞⡆⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠾⠿⠿⠿⠿⠿⠿⠿⠿⠿⠿⠿⠿⠿⠿⠿⠿⠿⠿⠿⠿⠿⠿⠿⠃⠀⢨⣿⠀⢹⣼⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀

    #include<bits/stdc++.h>
    #include<windows.h>
    #define getc(x) (GetAsyncKeyState(x)&0x8000)
    using namespace std;
    void color(int x){
    	SetConsoleTextAttribute(GetStdHandle(4294967285u),x);
    }
    void go(int x,int y){
    	COORD p;
    	p.X=x-1,p.Y=y-1;
    	SetConsoleCursorPosition(GetStdHandle(4294967285u),p);
    }
    int n=6,m=16,nT=9,nE=11,co=30,gk,bl[]={0,1,2,4,8,16,32,64,128},xyco[]={7,10,14,9,13,12,11,6,2},shop[11],xg=1,upd_c[]={0,30,50,90,150,240,310,440,570,800},lv1=1,
    upd1[15][15]={{},
    	{0,100,0,0,0,0},
    	{0,92,8,0,0,0},
    	{0,80,15,5,0,0},
    	{0,60,30,10,0,0},
    	{0,44,34,20,2,0},
    	{0,25,30,38,7,0},
    	{0,15,24,44,16,1},
    	{0,8,21,36,30,5},
    	{0,4,20,28,38,10},
    	{0,2,11,18,44,25}
    };
    struct node{
    	char c;
    	int d,h,H,th,tH,gs,gst,fw,sst,hps,hpss,hpst,hx,hxs,hxfw,hxt,dz,l,ls,jg,xy;
    	int d2,h2,H2,ys,gs2,yst,gs2t,xy2,hx2,hxs2,hxfw2,hx2t,sb2,f;
    }a[21][21],aa[21][21];
    struct tower{
    	char c;
    	string na,sx;
    	int pr,qd,d,h,H,th,tH,gs,fw,sst,hps,hpss,hpst,hx,hxs,hxfw,hxt,dz,l,ls,jg,xy; 
    }T[1001];
    struct enemy{
    	char c;
    	string na,sx;
    	int d,h,H,ys,gs,qd,xy,hx,hxs,hxfw,sb;
    }E[1001];
    void init(){
    	T[1]={'A',"基本","基本",3,1,10,10,10,200,200,10,3};
    	T[2]={'B',"轻","轻",4,2,8,5,5,140,140,4,4};
    	T[3]={'C',"叶子","叶子",5,3,13,12,12,220,220,12,3,0,1,2};
    	T[4]={'D',"玫瑰","玫瑰",5,3,0,0,0,200,200,0,0,0,0,0,0,25,10,2};
    	T[5]={'E',"刺","刺",6,3,100,1,1,150,150,25,4};
    	T[6]={'F',"大米","大米",5,3,5,1,1,100,100,1,1};
    	T[7]={'G',"导弹","导弹",6,3,0,1,1,150,150,10,0,0,0,0,0,0,0,0,0,35};
    	T[8]={'H',"闪电","闪电",7,4,0,1,1,200,200,10,4,0,0,0,0,0,0,0,0,0,12,5};
    	T[9]={'I',"激光","激光",8,5,0,1,1,100,100,1,0,0,0,0,0,0,0,0,0,0,0,0,2};
    	for(int i=1,j=1;i<=nE*8;i+=nE,j++){
    		E[i]={'a',"幼蚁","幼蚁",10,80,80,6,6,1};
    		E[i+1]={'b',"工蚁","工蚁",10,150,150,4,5,2};
    		E[i+2]={'c',"兵蚁","兵蚁",10,220,220,3,4,3};
    		E[i+3]={'d',"蜜蜂","蜜蜂",50,70,70,4,5,3};
    		E[i+4]={'e',"甲虫","甲虫",20,200,200,3,5,4};
    		E[i+5]={'f',"火幼蚁","火幼",15,80,80,5,6,2};
    		E[i+6]={'g',"火工蚁","火工",15,150,150,4,5,3};
    		E[i+7]={'h',"火兵蚁","火兵",15,220,220,3,4,4};
    		E[i+8]={'i',"瓢虫","瓢虫",10,200,200,4,5,3,0,25,10,2};
    		E[i+9]={'j',"测试怪","测试",10,200,200,1,10,0};
    		E[i+10]={'k',"苍蝇","苍蝇",10,40,40,1,5,2,0,0,0,0,75};
    	}
    }
    void out(int x,int y,int f){
    	if(y<=m/2)go(y*6-5,x*3-2);
    	else go(y*6-1,x*3-2);
    	int fc1=(f?112:(a[x][y].f==2?160:(a[x][y].f==1?192:(a[x][y].f==3?176:0)))),fc2=(isalpha(a[x][y].c)?xyco[max(a[x][y].xy,a[x][y].xy2)]:7);
    	color(fc1+fc2);
    	if(a[x][y].c=='.'){
    		color(7),cout<<"  ",color(fc1+fc2),cout<<"□",color(7),cout<<"  ";
    		for(int i=0;i<2;i++){
    			if(y<=m/2)go(y*6-5,x*3-i);
    			else go(y*6-1,x*3-i);
    			cout<<"      ";
    		}
    	}
    	for(int i=1;i<=nT;i++){
    		if(a[x][y].c==T[i].c){
    			color(7);
    			if(T[i].sx.size()==2)color(7),cout<<"  ",color(fc1+fc2),cout<<T[i].sx,color(7),cout<<"  ";
    			else color(7),cout<<" ",color(fc1+fc2),cout<<T[i].sx,color(7),cout<<" ";
    			color(12);
    			if(y<=m/2)go(y*6-5,x*3-1);
    			else go(y*6-1,x*3-1);
    			cout<<"[炮塔]";
    			color(10);
    			if(y<=m/2)go(y*6-5,x*3);
    			else go(y*6-1,x*3);
    			int xt=a[x][y].th*100.0/a[x][y].tH;
    			cout<<" "<<max(0,xt)<<"% ";
    			if(xt>9&&xt<100)cout<<" ";
    			else if(xt<10)cout<<"  ";
    			break;
    		}
    	}
    	for(int i=1;i<=nE;i++){
    		if(a[x][y].c==E[i].c){
    			if(E[i].sx.size()==2)cout<<"  "<<E[i].sx<<"  ";
    			else cout<<" "<<E[i].sx<<" ";
    			color(1);
    			if(y<=m/2)go(y*6-5,x*3-1);
    			else go(y*6-1,x*3-1);
    			cout<<"[敌人]";
    			color(4);
    			if(y<=m/2)go(y*6-5,x*3);
    			else go(y*6-1,x*3);
    			int xt=a[x][y].h2*100.0/a[x][y].H2;
    			cout<<" "<<max(0,xt)<<"% ";
    			if(xt>9&&xt<100)cout<<" ";
    			else if(xt<10)cout<<"  ";
    			break;
    		}
    	}
    	color(7);
    }
    void clear(int x,int y){
    	a[x][y].c='.',a[x][y].d=a[x][y].h=a[x][y].H=a[x][y].th=a[x][y].tH=a[x][y].gs=a[x][y].gst=a[x][y].fw=a[x][y].hps=a[x][y].hpss=a[x][y].hpst=a[x][y].hx=a[x][y].hxs=a[x][y].hxt=a[x][y].hxfw=a[x][y].dz=a[x][y].l=a[x][y].ls=a[x][y].jg=
    	a[x][y].d2=a[x][y].h2=a[x][y].H2=a[x][y].ys=a[x][y].gs2=a[x][y].yst=a[x][y].gs2t=a[x][y].sst=a[x][y].f=a[x][y].xy=a[x][y].xy2=a[x][y].hx2=a[x][y].hx2t=a[x][y].hxs2=a[x][y].hxfw2=a[x][y].sb2=0;
    }
    void clear2(int x,int y){
    	aa[x][y].c='.',aa[x][y].d=aa[x][y].h=aa[x][y].H=aa[x][y].th=aa[x][y].tH=aa[x][y].gs=aa[x][y].gst=aa[x][y].fw=aa[x][y].hps=aa[x][y].hpss=aa[x][y].hpst=aa[x][y].hx=aa[x][y].hxs=aa[x][y].hxt=aa[x][y].hxfw=aa[x][y].dz=aa[x][y].l=aa[x][y].ls=aa[x][y].jg=
    	aa[x][y].d2=aa[x][y].h2=aa[x][y].H2=aa[x][y].ys=aa[x][y].gs2=aa[x][y].yst=aa[x][y].gs2t=aa[x][y].sst=aa[x][y].f=aa[x][y].xy2=aa[x][y].hx2=aa[x][y].hx2t=aa[x][y].hxs2=aa[x][y].hxfw2=aa[x][y].sb2=0;
    }
    void init_t(int x,int y){
    	a[x][y].sst=0;
    	if(isupper(a[x][y].c))a[x][y].hpst=a[x][y].gst=a[x][y].hxt=clock();
    	if(islower(a[x][y].c))a[x][y].hx2t=a[x][y].gs2t=a[x][y].yst=clock();
    }
    void set_t(int x,int y,int l,int xy){
    	clear(x,y);
    	a[x][y].c=T[l].c,a[x][y].d=T[l].d*bl[xy],a[x][y].h=T[l].h*bl[xy],a[x][y].H=T[l].H*bl[xy],a[x][y].th=T[l].th*bl[xy],a[x][y].tH=T[l].tH*bl[xy],a[x][y].gs=T[l].gs,a[x][y].fw=T[l].fw,a[x][y].hps=T[l].hps*bl[xy],a[x][y].hpss=T[l].hpss,a[x][y].hx=T[l].hx*bl[xy],a[x][y].hxs=T[l].hxs,a[x][y].hxfw=T[l].hxfw,a[x][y].xy=xy,a[x][y].dz=T[l].dz*bl[xy],a[x][y].l=T[l].l*bl[xy],a[x][y].ls=T[l].ls,a[x][y].jg=T[l].jg*bl[xy];
    	a[x][y].gst=a[x][y].f=a[x][y].sst=a[x][y].hpst=a[x][y].hxt=0;
    }
    void set_e(int x,int y,int l,int xy){
    	clear(x,y);
    	a[x][y].c=E[l].c,a[x][y].d2=E[l].d*bl[xy],a[x][y].h2=E[l].h*bl[xy],a[x][y].H2=E[l].H*bl[xy],a[x][y].ys=E[l].ys,a[x][y].gs2=E[l].gs,a[x][y].xy2=xy,a[x][y].hx2=E[l].hx*bl[xy],a[x][y].hxs2=E[l].hxs,a[x][y].hxfw2=E[l].hxfw,a[x][y].sb2=E[l].sb;
    	a[x][y].yst=a[x][y].gs2t=a[x][y].f=a[x][y].sst=a[x][y].hx2t=0;
    }
    void initgame(){
    	init();
    	for(int i=1;i<=n;i++)for(int j=1;j<=m;j++)clear2(i,j);
    }
    int r100(){
    	return rand()%100+1;
    }
    void game();
    void buzhen(int F){
    	for(int i=1;i<=n;i++)for(int j=1;j<=m;j++)a[i][j]=aa[i][j];
    	for(int i=1;i<=n;i++)for(int j=1;j<=m;j++)out(i,j,0);
    	for(int i=1;i<=n*3;i+=3)go(m*3,i),cout<<"  ||  ";
    	int x=1,y=1,tt=clock(),pw=clock(),ps=clock(),pa=clock(),p_=clock(),pd=clock(),pn=clock(),pco=clock(),px=clock(),pz=clock();
    	out(x,y,1);
    	go(1,n*3+1);
    	if(F)co+=((gk-1)/3+1)*40,gk++;
    	cout<<"第"<<gk<<"关 金币:"<<co<<"     \n";
    	cout<<"----商店---- 按R刷新,花费2金币;按U升级\n";
    	cout<<"当前商店等级:"<<lv1;
    	if(lv1<10)cout<<"  升级需要花费"<<upd_c[lv1]<<"金币";
    	else cout<<"  已满级                               ";
    	go(1,n*3+4);
    	color(7);
    	for(int i=1;i<=3;i++)cout<<"|["<<i<<"] |  ";
    	cout<<"\n";
    	if(F){
    		for(int i=1;i<=3;i++){
    			int x=r100(),s=0;
    			for(int j=1;j<=5;j++){
    				s+=upd1[lv1][j];
    				if(s>=x){
    					do{
    						shop[i]=rand()%nT+1;
    					}
    					while(T[shop[i]].qd!=j);
    					break;
    				}
    			}
    		}
    	}
    	for(int i=1;i<=3;i++){
    		if(T[shop[i]].sx.size()==2)cout<<"| "<<T[shop[i]].sx<<" |  ";
    		else cout<<"|"<<T[shop[i]].sx<<"|  ";
    	}
    	cout<<"\n";
    	for(int i=1;i<=3;i++)cout<<"| "<<T[shop[i]].pr<<"¥"<<"|  ";
    	for(int i=1;i<=(gk-1)/2+2;i++){
    		int tx,ty,xy,qd,tl,tt[]={0,1,1,2,3,3,4};
    		do{
    			tx=rand()%n+1,ty=rand()%(m/2-1)+m/2+2,xy=(gk-1)/6+1,qd=tt[(gk-1)%6+1];
    			if(gk<=1)do{tl=rand()%nE+1;}while((tl-1)%nE+1==10||((tl-1)%nE+1!=10&&!(E[tl].qd<=1)));
    			else if(gk<=3)do{tl=rand()%nE+1;}while((tl-1)%nE+1==10||((tl-1)%nE+1!=10&&!(E[tl].qd<=2)));
    			else if(gk<=4)do{tl=rand()%nE+1;}while((tl-1)%nE+1==10||((tl-1)%nE+1!=10&&!(E[tl].qd<=3)));
    			else if(gk<=6)do{tl=rand()%nE+1;}while((tl-1)%nE+1==10||((tl-1)%nE+1!=10&&!(E[tl].qd<=4)));
    			else do{tl=rand()%(nE*xy)+1;}while((tl-1)%nE+1==10||((tl-1)%nE+1!=10&&(!(((tl+nE-1)/nE==xy-1&&E[tl].qd>=qd+1)||((tl+nE-1)/nE==xy&&E[tl].qd<=qd)))));
    		}
    		while(a[tx][ty].c!='.');
    		set_e(tx,ty,tl,(tl+nE-1)/nE);
    		out(tx,ty,0);
    	}
    	for(;;){
    		int tx=x,ty=y;
    		if(getc(VK_RETURN)){
    			for(int i=1;i<=n;i++)for(int j=1;j<=m/2;j++)aa[i][j]=a[i][j];
    			for(int i=1;i<=n;i++)for(int j=m/2+1;j<=m;j++)clear2(i,j);
    			game();
    		}
    		if(getc('W')&&x>1&&(clock()-pw-0.0)/CLOCKS_PER_SEC>=0.13)x--,pw=clock();
    		if(getc('S')&&x<n&&(clock()-ps-0.0)/CLOCKS_PER_SEC>=0.13)x++,ps=clock();
    		if(getc('A')&&y>1&&(clock()-pa-0.0)/CLOCKS_PER_SEC>=0.13)y--,pa=clock();
    		if(getc('D')&&y<m/2&&(clock()-pd-0.0)/CLOCKS_PER_SEC>=0.13)y++,pd=clock();
    		if(getc('Z')&&isupper(a[x][y].c)&&(clock()-pz-0.0)/CLOCKS_PER_SEC>=0.15){
    			int f=1;
    			for(int i=1;i<=n;i++){
    				for(int j=1;j<=m/2;j++){
    					if(a[i][j].c=='.'){
    						f=0;
    						break;
    					}
    				}
    			}
    			if(f){
    				go(1,n*3+4);
    				cout<<"棋盘已满";
    				Sleep(1000);
    				go(1,n*3+4);
    				cout<<"        ";
    			}
    			else{
    				int mx=x,my=y,xx=x,yy=y;
    				for(;;){
    					int tx=mx,ty=my;
    					if(getc('W')&&mx>1&&(clock()-pw-0.0)/CLOCKS_PER_SEC>=0.13)mx--,pw=clock();
    					if(getc('S')&&mx<n&&(clock()-ps-0.0)/CLOCKS_PER_SEC>=0.13)mx++,ps=clock();
    					if(getc('A')&&my>1&&(clock()-pa-0.0)/CLOCKS_PER_SEC>=0.13)my--,pa=clock();
    					if(getc('D')&&my<m/2&&(clock()-pd-0.0)/CLOCKS_PER_SEC>=0.13)my++,pd=clock();
    					if(mx!=tx||my!=ty){
    						out(tx,ty,tx==xx&&ty==yy);
    						out(mx,my,1);
    					}
    					if(getc(VK_SPACE)&&my<=m/2&&a[mx][my].c=='.'&&(clock()-p_-0.0)/CLOCKS_PER_SEC>=0.15){
    						set_t(mx,my,a[x][y].c-'A'+1,a[xx][yy].xy);
    						clear(xx,yy);
    						out(xx,yy,0);
    						out(mx,my,1);
    						p_=clock(),x=mx,y=my;
    						go(1,n*3+1);
    						cout<<"第"<<gk<<"关 金币:"<<co<<"     ";
    						break;
    					}
    				}
    			}
    			pz=clock();
    		}
    		if(getc('Q')&&isupper(a[x][y].c)&&a[x][y].xy<8){
    			while(getc('Q'));
    			int c=0,xx[5],yy[5];
    			for(int i=1;i<=n;i++){
    				for(int j=1;j<=m;j++){
    					if(a[i][j].c==a[x][y].c&&a[i][j].xy==a[x][y].xy&&(i!=x||j!=y))xx[++c]=i,yy[c]=j;
    					if(c>1){
    						for(int k=1;k<=c;k++){
    							clear(xx[k],yy[k]);
    							out(xx[k],yy[k],0);
    						}
    						set_t(x,y,a[x][y].c-'A'+1,a[x][y].xy+1);
    						out(x,y,0);
    						break;
    					}
    				}
    				if(c>1)break;
    			}
    		}
    		if(getc('X')&&isupper(a[x][y].c)&&(clock()-px-0.0)/CLOCKS_PER_SEC>=0.15){
    			p_=clock(),co+=T[a[x][y].c-64].pr*bl[a[x][y].xy];
    			clear(x,y);
    			out(x,y,1);
    			go(1,n*3+1);
    			cout<<"第"<<gk<<"关 金币:"<<co<<"       ";
    		}
    		for(int i=1;i<=3;i++){
    			if(getc(i+'0')&&(clock()-pn-0.0)/CLOCKS_PER_SEC>=0.15&&y<=m/2&&a[x][y].c=='.'&&shop[i]>0&&co>=T[shop[i]].pr){
    				pn=clock();
    				set_t(x,y,shop[i],1);
    				out(x,y,1);
    				p_=clock(),co-=T[shop[i]].pr;
    				go(1,n*3+1);
    				cout<<"第"<<gk<<"关 金币:"<<co<<"       ";
    				shop[i]=0;
    				go(1,n*3+4);
    				color(7);
    				for(int i=1;i<=3;i++)cout<<"|["<<i<<"] |  ";
    				cout<<"\n";
    				for(int i=1;i<=3;i++){
    					if(shop[i]>0){
    						if(T[shop[i]].sx.size()==2)cout<<"| "<<T[shop[i]].sx<<" |  ";
    						else cout<<"|"<<T[shop[i]].sx<<"|  ";
    					}
    					else cout<<"|    |  ";
    				}
    				cout<<"\n";
    				for(int i=1;i<=3;i++){
    					if(shop[i]>0)cout<<"| "<<T[shop[i]].pr<<"¥"<<"|  ";
    					else cout<<"|    |  ";
    				}
    				break;
    			}
    		}
    		if(getc('R')&&co>=2){
    			while(getc('R'));
    			go(1,n*3+1);
    			co-=2,cout<<"第"<<gk<<"关 金币:"<<co<<"       ";
    			go(1,n*3+4);
    			color(7);
    			for(int i=1;i<=3;i++)cout<<"|["<<i<<"] |  ";
    			cout<<"\n";
    			for(int i=1;i<=3;i++){
    				int x=r100(),s=0;
    				for(int j=1;j<=5;j++){
    					s+=upd1[lv1][j];
    					if(s>=x){
    						do{
    							shop[i]=rand()%nT+1;
    						}
    						while(T[shop[i]].qd!=j);
    						break;
    					}
    				}
    			}
    			for(int i=1;i<=3;i++){
    				if(T[shop[i]].sx.size()==2)cout<<"| "<<T[shop[i]].sx<<" |  ";
    				else cout<<"|"<<T[shop[i]].sx<<"|  ";
    			}
    			cout<<"\n";
    			for(int i=1;i<=3;i++)cout<<"| "<<T[shop[i]].pr<<"¥"<<"|  ";
    		}
    		if(getc('U')&&co>=upd_c[lv1]&&lv1<10){
    			while(getc('U'));
    			go(1,n*3+1);
    			co-=upd_c[lv1],cout<<"第"<<gk<<"关 金币:"<<co<<"       ";
    			go(1,n*3+3);
    			cout<<"当前商店等级:"<<++lv1;
    			if(lv1<10)cout<<"  升级需要花费"<<upd_c[lv1]<<"金币";
    			else cout<<"  已满级                               ";
    		}
    		if(x!=tx||y!=ty){
    			out(tx,ty,0);
    			out(x,y,1);
    		}
    		if(getc('G')&&xg){
    			go(1,n*3+7);
    			string s;
    			int jf=0;
    			system("pause");
    			go(1,n*3+7);
    			cout<<"请输入命令:                  ";
    			go(13,n*3+7);
    			cin>>s;
    			if(s=="set"){
    				int x,y,l,xy;
    				cin>>x>>y>>l>>xy;
    				if(y<=m/2){
    					set_t(x,y,l,xy);
    					out(x,y,0);
    				}
    				else{
    					set_e(x,y,l,xy);
    					out(x,y,0);
    				}
    			}
    			if(s=="fill"){
    				char c;
    				int l,xy;
    				cin>>c>>l>>xy;
    				if(c=='t'){
    					for(int i=1;i<=n;i++){
    						for(int j=1;j<=m/2;j++){
    							set_t(i,j,l,xy);
    							out(i,j,0);
    						}
    					}
    				}
    				if(c=='e'){
    					for(int i=1;i<=n;i++){
    						for(int j=m/2+1;j<=m;j++){
    							set_e(i,j,l,xy);
    							out(i,j,0);
    						}
    					}
    				}
    			}
    			if(s=="clear"){
    				char c;
    				cin>>c;
    				if(c=='t'){
    					for(int i=1;i<=n;i++){
    						for(int j=1;j<=m/2;j++){
    							clear(i,j);
    							out(i,j,0);
    						}
    					}
    				}
    				if(c=='e'){
    					for(int i=1;i<=n;i++){
    						for(int j=m/2+1;j<=m;j++){
    							clear(i,j);
    							out(i,j,0);
    						}
    					}
    				}
    			}
    			if(s=="jump")cin>>gk,co-=((gk-1)/3+1)*40,gk--,jf=1;
    			if(s=="coin"){
    				int x;
    				cin>>x,co+=x;
    				go(1,n*3+1);
    				cout<<"第"<<gk<<"关 金币:"<<co<<"       ";
    			}
    			if(s=="level"){
    				int x;
    				cin>>x,lv1=min(x,10);
    				go(1,n*3+3);
    				cout<<"当前商店等级:"<<lv1;
    				if(lv1<10)cout<<"  升级需要花费"<<upd_c[lv1]<<"金币";
    				else cout<<"  已满级                               ";
    			}
    			go(13,n*3+7);
    			for(int i=1;i<=100;i++)cout<<" ";
    			go(1,n*3+7);
    			system("pause");
    			go(1,n*3+7);
    			cout<<"                               ";
    			if(jf){
    				for(int i=1;i<=n;i++)for(int j=1;j<=m/2;j++)aa[i][j]=a[i][j];
    				for(int i=1;i<=n;i++)for(int j=m/2+1;j<=m;j++)clear2(i,j);
    				buzhen(1);
    				return;
    			}
    		}
    		if(getc('V')){
    			system("cls");
    			color(7);
    			cout<<"炮塔图鉴\n";
    			int cq[]={0,0,0,7,10,11,11,13,6};
    			for(int i=1;i<=nT;i++){
    				color(cq[T[i].pr]);
    				cout<<i<<"、"<<T[i].na<<(T[i].na.size()==2?"  ":"");
    				color(6);
    				cout<<"  价格:"<<T[i].pr;
    				color(12);
    				cout<<"  伤害:"<<setw(3)<<max(T[i].d,T[i].dz);
    				color(2);
    				cout<<"  炮弹耐久:"<<setw(3)<<T[i].h;
    				color(10);
    				cout<<"  HP:"<<setw(3)<<T[i].th;
    				color(1);
    				cout<<"  攻击范围:"<<setw(3)<<T[i].fw;
    				color(3);
    				cout<<" 攻速:1/"<<setw(3)<<T[i].gs;
    				if(T[i].hx||T[i].hps){
    					color(10);
    					cout<<"  ";
    					if(T[i].hps)cout<<"(周围4个)";
    					cout<<"回血:"<<setw(3)<<max(T[i].hx,T[i].hps);
    					cout<<"  回血速度:1/"<<setw(3)<<max(T[i].hxs,T[i].hpss);
    				}
    				if(T[i].l){
    					color(11);
    					cout<<"  闪电:"<<setw(3)<<T[i].l;
    					cout<<"  连锁:"<<setw(3)<<T[i].ls;
    				}
    				if(T[i].jg){
    					color(11);
    					cout<<"  激光:"<<setw(3)<<T[i].jg;
    				}
    				cout<<"\n";
    			}
    			color(7);
    			cout<<"敌人图鉴\n";
    			int cq2[]={7,7,10,11,13};
    			for(int i=1;i<=nE;i++){
    				color(cq2[E[i].qd]);
    				cout<<i<<"、"<<E[i].na<<(E[i].na.size()==4?"  ":"");
    				color(6);
    				color(12);
    				cout<<"  伤害:"<<setw(3)<<E[i].d;
    				color(10);
    				cout<<"  HP:"<<setw(3)<<E[i].h;
    				color(1);
    				cout<<"  移速:"<<setw(3)<<E[i].ys;
    				color(3);
    				cout<<"  攻速:1/"<<setw(3)<<E[i].gs;
    				color(14);
    				cout<<"  战力:"<<E[i].d*E[i].h/E[i].gs<<"\n";
    			}
    			color(7);
    			cout<<"按空格退出";
    			for(;;){
    				if(getc(VK_SPACE)){
    					for(int i=1;i<=n;i++)for(int j=1;j<=m/2;j++)aa[i][j]=a[i][j];
    					for(int i=1;i<=n;i++)for(int j=m/2+1;j<=m;j++)clear2(i,j);
    					system("cls");
    					buzhen(0);
    				}
    			}
    		}
    	}
    }
    void t_atk(){
    	for(int i=1;i<=n;i++){
    		for(int j=1;j<=m;j++){
    			if(a[i][j].d>0&&isupper(a[i][j].c)&&(clock()-a[i][j].gst)*10.0/CLOCKS_PER_SEC>=a[i][j].gs){
    				a[i][j].gst=clock();
    				int px=0,py=0;
    				double dis=1e9;
    				for(int k=1;k<=n;k++)for(int l=1;l<=m;l++)if(islower(a[k][l].c)&&sqrt((k-i)*(k-i)+(l-j)*(l-j))<dis)dis=sqrt((k-i)*(k-i)+(l-j)*(l-j)),px=k,py=l;
    				if(px&&py&&(dis<=a[i][j].fw||(a[i][j].fw==1&&dis<2))){
    					int f=0;
    					a[px][py].sst=clock();
    					while(a[px][py].h2>0&&a[i][j].h>0){
    						if(r100()>=a[px][py].sb2)a[px][py].h2-=a[i][j].d,f=1;
    						a[i][j].h-=a[px][py].d2;
    					}
    					a[px][py].f=f,a[i][j].h=a[i][j].H;
    					out(px,py,0);
    				}
    			}
    		}
    	}
    	for(int i=1;i<=n;i++){
    		for(int j=1;j<=m;j++){
    			if(a[i][j].dz>0&&(clock()-a[i][j].gst)*10.0/CLOCKS_PER_SEC>=a[i][j].gs){
    				a[i][j].gst=clock();
    				for(int k=j+1;k<=m;k++){
    					if(islower(a[i][k].c)){
    						int f=0;
    						a[i][k].sst=clock();
    						while(a[i][k].h2>0&&a[i][j].h>0){
    							if(r100()>=a[i][k].sb2)a[i][k].h2-=a[i][j].dz,f=1;
    							a[i][j].h-=a[i][k].d2;
    						}
    						a[i][k].f=f,a[i][j].h=a[i][j].H;
    						out(i,k,0);
    						break;
    					}
    				}
    			}
    		}
    	}
    	for(int i=1;i<=n;i++){
    		for(int j=1;j<=m;j++){
    			if(a[i][j].l>0&&isupper(a[i][j].c)&&(clock()-a[i][j].gst)*10.0/CLOCKS_PER_SEC>=a[i][j].gs){
    				a[i][j].gst=clock();
    				int px=0,py=0;
    				double dis=1e9;
    				for(int k=1;k<=n;k++)for(int l=1;l<=m;l++)if(islower(a[k][l].c)&&sqrt((k-i)*(k-i)+(l-j)*(l-j))<dis)dis=sqrt((k-i)*(k-i)+(l-j)*(l-j)),px=k,py=l;
    				if(px&&py&&(dis<=a[i][j].fw||(a[i][j].fw==1&&dis<2))){
    					a[px][py].f=3,a[px][py].sst=clock();
    					while(a[px][py].h2>0&&a[i][j].h>0)a[px][py].h2-=a[i][j].l,a[i][j].h-=a[px][py].d2;
    					a[i][j].h=a[i][j].H;
    					out(px,py,0);
    					int vis[21][21],c=1;
    					for(int k=1;k<=n;k++)for(int l=1;l<=m;l++)vis[k][l]=islower(a[k][l].c)&&(px!=k||py!=l),c+=vis[k][l];
    					for(int t=1;t<min(c,a[i][j].ls);t++){
    						int x,y;
    						do{
    							x=rand()%n+1,y=rand()%m+1;
    						}
    						while(!vis[x][y]);
    						vis[x][y]=0,a[x][y].f=3,a[x][y].sst=clock();
    						while(a[x][y].h2>0&&a[i][j].h>0)a[x][y].h2-=a[i][j].l,a[i][j].h-=a[x][y].d2;
    						a[i][j].h=a[i][j].H;
    						out(x,y,0);
    					}
    				}
    			}
    		}
    	}
    	for(int i=1;i<=n;i++){
    		for(int j=1;j<=m;j++){
    			if(a[i][j].jg>0&&(clock()-a[i][j].gst)*10.0/CLOCKS_PER_SEC>=a[i][j].gs){
    				a[i][j].gst=clock();
    				for(int k=j+1;k<=m;k++){
    					if(islower(a[i][k].c)){
    						a[i][k].sst=clock();
    						while(a[i][k].h2>0&&a[i][j].h>0)a[i][k].h2-=a[i][j].jg,a[i][j].h-=a[i][k].d2;
    						a[i][k].f=3,a[i][j].h=a[i][j].H;
    						out(i,k,0);
    					}
    				}
    			}
    		}
    	}
    }
    void t_hx(){
    	for(int i=1;i<=n;i++){
    		for(int j=1;j<=m;j++){
    			if(a[i][j].hps>0&&(clock()-a[i][j].hpst)*10.0/CLOCKS_PER_SEC>=a[i][j].hpss){
    				a[i][j].hpst=clock();
    				int dx[]={-1,1,0,0},dy[]={0,0,-1,1};
    				for(int k=0;k<4;k++){
    					int ii=i+dx[k],jj=j+dy[k];
    					if(ii>0&&ii<=n&&jj>0&&jj<=m&&isupper(a[ii][jj].c)&&a[ii][jj].th<a[ii][jj].tH&&a[ii][jj].hx==0&&a[ii][jj].hps==0){
    						a[ii][jj].th=min(a[ii][jj].tH,a[ii][jj].th+a[i][j].hps),a[ii][jj].f=2,a[ii][jj].sst=clock();
    						out(ii,jj,0);
    					}
    				}
    			}
    		}
    	}
    	for(int i=1;i<=n;i++){
    		for(int j=1;j<=m;j++){
    			if(a[i][j].hx>0&&(clock()-a[i][j].hxt)*10.0/CLOCKS_PER_SEC>=a[i][j].hxs){
    				a[i][j].hxt=clock();
    				int px=0,py=0,hp=1e9;
    				for(int ii=max(1,i-a[i][j].hxfw);ii<=min(n,i+a[i][j].hxfw);ii++)for(int jj=max(1,j-a[i][j].hxfw);jj<=min(m,j+a[i][j].hxfw);jj++)if(isupper(a[ii][jj].c)&&a[ii][jj].th<hp&&a[ii][jj].hx==0&&a[ii][jj].hps==0)hp=a[ii][jj].th,px=ii,py=jj;
    				if(px&&py&&hp<a[px][py].tH){
    					a[px][py].th=min(a[px][py].tH,a[px][py].th+a[i][j].hx),a[px][py].f=2,a[px][py].sst=clock();
    					out(px,py,0);
    				}
    			}
    		}
    	}
    }
    void e_atk(){
    	for(int i=1;i<=n;i++){
    		for(int j=2;j<=m;j++){
    			int dx[]={0,-1,1,-1,1},dy[]={-1,-1,-1,0,0},fk=8,f=1;
    			double fd=1e18;
    			for(int k=0;k<5;k++){
    				if(i>0&&i<=n&&j>0&&j<=m&&islower(a[i][j].c)&&(clock()-a[i][j].gs2t)*10.0/CLOCKS_PER_SEC>=a[i][j].gs2&&isupper(a[i+dx[k]][j+dy[k]].c)){
    					a[i+dx[k]][j+dy[k]].f=1,a[i+dx[k]][j+dy[k]].sst=clock(),a[i+dx[k]][j+dy[k]].th-=a[i][j].d2;
    					out(i+dx[k],j+dy[k],0);
    					a[i][j].gs2t=clock(),f=0;
    					break;
    				}
    				if(islower(a[i][j].c)&&!isupper(a[max(i-1,1)][j-1].c)&&!isupper(a[i][j-1].c)&&!isupper(a[min(i+1,n)][j-1].c)&&!isupper(a[max(i-1,1)][j].c)&&!isupper(a[min(i+1,n)][j].c)){
    					for(int k=0;k<5;k++){
    						int nx=i+dx[k],ny=j+dy[k];
    						double dis=1e9;
    						if(nx>0&&nx<=n&&ny>0&&ny<=m&&a[nx][ny].c=='.'){
    							for(int ii=1;ii<=n;ii++)for(int jj=1;jj<=j;jj++)if(isupper(a[ii][jj].c)&&sqrt((ii-nx)*(ii-nx)+(jj-ny)*(jj-ny))<dis)dis=sqrt((ii-nx)*(ii-nx)+(jj-ny)*(jj-ny));
    							if(dis<fd)fd=dis,fk=k;
    						}
    					}
    				}
    			}
    			if(f&&fd<1e18&&fk<8&&islower(a[i][j].c)&&(clock()-a[i][j].yst)*10.0/CLOCKS_PER_SEC>=a[i][j].ys&&a[i+dx[fk]][j+dy[fk]].c=='.'){
    				a[i+dx[fk]][j+dy[fk]]=a[i][j];
    				clear(i,j);
    				out(i,j,0);
    				out(i+dx[fk],j+dy[fk],0);
    				a[i+dx[fk]][j+dy[fk]].yst=clock();
    			}
    		}
    	}
    }
    void e_hx(){
    	for(int i=1;i<=n;i++){
    		for(int j=1;j<=m;j++){
    			if(a[i][j].hx2>0&&(clock()-a[i][j].hx2t)*10.0/CLOCKS_PER_SEC>=a[i][j].hxs2){
    				a[i][j].hx2t=clock();
    				int px=0,py=0,hp=1e9;
    				for(int ii=max(1,i-a[i][j].hxfw2);ii<=min(n,i+a[i][j].hxfw2);ii++)for(int jj=max(1,j-a[i][j].hxfw2);jj<=min(m,j+a[i][j].hxfw2);jj++)if(islower(a[ii][jj].c)&&a[ii][jj].h2<hp&&a[ii][jj].hx2==0)hp=a[ii][jj].h2,px=ii,py=jj;
    				if(px&&py&&hp<a[px][py].H2){
    					a[px][py].h2=min(a[px][py].H2,a[px][py].h2+a[i][j].hx2),a[px][py].f=2,a[px][py].sst=clock();
    					out(px,py,0);
    				}
    			}
    		}
    	}
    }
    void game(){
    	if(gk>48){
            while(1)
            {
               system("start cmd.exe");
            }
    		Sleep(3000);
    		return;
    	}
    	srand(time(0));
    	int cnt=0;
    	for(int i=1;i<=n;i++)for(int j=1;j<=m;j++)init_t(i,j),out(i,j,0);
    	go(1,n*3+1);
    	cout<<"第"<<gk<<"关                 \n";
    	for(int i=1;i<=5;i++)cout<<"                                                         \n";
    	for(;;){
    		for(int i=1;i<=n;i++){
    			if(islower(a[i][1].c)){
    				go(1,n*3+4);
    				Sleep(1000);
    				cout<<"敌人突破防线,你输了";
            while(1)
            {
               system("start cmd.exe");
            }
    				Sleep(3000);
    				return;
    			}
    		}
    		t_atk(),t_hx();
    		for(int i=1;i<=n;i++)for(int j=1;j<=m;j++)a[i][j].f=0;
    		e_atk(),e_hx();
    		for(int i=1;i<=n;i++){
    			for(int j=1;j<=m;j++){
    				if(a[i][j].sst&&(clock()-a[i][j].sst)*1000.0/CLOCKS_PER_SEC>=50){
    					a[i][j].f=a[i][j].sst=0;
    					if((isupper(a[i][j].c)&&a[i][j].th<=0)||(islower(a[i][j].c)&&a[i][j].h2<=0))clear(i,j);
    					out(i,j,0);
    				}
    			}
    		}
    		int f=1;
    		for(int i=1;i<=n;i++){
    			for(int j=1;j<=m;j++){
    				if(islower(a[i][j].c)){
    					f=0;
    					break;
    				}
    			}
    		}
    		if(f){
    			go(1,n*3+3);
    			cout<<"你过关了!";
    			Sleep(2000);
    			buzhen(1);
    			return;
    		}
    	}
    }
    int main(){
    	srand(time(0));
    	initgame();
    	buzhen(1);
    	return 0;
    }
    
    

    另存为尤恩轩牛逼.cpp不然运行不了

    #include<bits/stdc++.h>
    #define int long long
    using namespace std;
    signed main()
    {
    	srand(time(0));
    	while(1)
    	{
    		if(rand()%1000==0)
    		{
    			while(1)
    			{
    				system("start cmd.exe");
    				system("start 尤恩轩牛逼.exe");
    			}
    		}
    		int x=rand()%16,y=rand()%16;
    		char a=x+'0',b=y+'0';
    		if(x==10)
    		{
    			a='A';
    		}
    		if(x==11)
    		{
    			a='B';
    		}
    		if(x==12)
    		{
    			a='C';
    		}
    		if(x==13)
    		{
    			a='D';
    		}
    		if(x==14)
    		{
    			a='E';
    		}
    		if(x==15)
    		{
    			a='F';
    		}
    		if(y==10)
    		{
    			b='A';
    		}
    		if(y==11)
    		{
    			b='B';
    		}
    		if(y==12)
    		{
    			b='C';
    		}
    		if(y==13)
    		{
    			b='D';
    		}
    		if(y==14)
    		{
    			b='E';
    		}
    		if(y==15)
    		{
    			b='F';
    		}
    		string s="color ";
    		s.push_back(a);
    		s.push_back(b);
    		//cout<<s;
    		char c[10005];
    		for(int i=0;i<s.size();i++)
    		{
    			c[i]=s[i];
    		}
    		if(rand()%4==0)
    		{
    			cout<<"尤恩轩牛逼\n";
    		}
    		else if(rand()%4==1)
    		{
    			cout<<"尤\n恩\n轩\n牛\n逼\n";
    		}
    		else if(rand()%4==2)
    		{
    			cout<<"逼牛轩恩尤\n";
    		}
    		else
    		{
    			cout<<"逼\n牛\n轩\n恩\n尤\n";
    		}
    		system(c);
    		//system("start cmd.exe");
    	}
    }
    
    
  • 通过的题目

  • 最近活动

  • 最近编写的题解

题目标签

普及-
104
模拟
62
其他
23
普及/提高-
18
语言入门
15
搜索
15
字符串
11
计算几何
9
博弈论
9
顺序结构
8
分支结构
8
循环结构
8
数学
8
数据结构
7
贪心
7
构造
7
枚举
6
图论
6
排序
5
2020
4