• 个人简介

    Florr Adventure Continent(开源)

    Florr Adventure Continent(正式)

    Scratch

    florr地图下载

    瞎写的模拟题

    florr记事簿

    封装函数

    #include<bits/stdc++.h>
    #define int long long
    #define code using
    #define by namespace
    #define XWC std;
    #define f first
    #define s second
    code by XWC
    signed main(){
    
    	return 0;
    }
    /*
    freopen(".in","r",stdin);
    freopen(".out","w",stdout);
    
    **注意**
    1.fropen文件名("day,in")
    2.函数变量的初始化(int ans;)
    3.文件名(expolor)
    4.模数(int MOD=1000000010)
    */
    
    

    赌徒游戏

    #include<bits/stdc++.h>
    #include<windows.h>
    #include<ctime> 
    using namespace std;
    const int N=1e7+10;
    bool flag[20][20];
    int x[N],y[N];
    int chip;
    void print(int x){
    	if(x==18){
    		cout<<" x x x x x x x x x x x x x x x x x\n";
    		cout<<" 5 2 5 3 2 0 1 1 1 1 1 0 2 3 5 2 5\n";
    		cout<<" 0 0                           0 0\n";
    		cout<<" 0                               0\n";
    		return;
    	}
    	for(int i=1;i<=17-x;i++) cout<<" ";
    	if(x%2==0){
    		for(int i=1;i<=(x+1)/2;i++){
    			cout<<".";
    			if(flag[x][i]) cout<<"O";
    			else cout<<" ";
    		}
    		if(!(x%2)) cout<<"."; 
    		for(int i=1;i<=(x+1)/2;i++){
    			if(flag[x][(x+1)/2+i]) cout<<"O";
    			else cout<<" ";
    			cout<<".";
    		}
    	}
    	else{
    		for(int i=1;i<=(x+1)/2;i++){
    			cout<<".";
    			if(flag[x][i]) cout<<"O";
    			else cout<<" ";
    		}
    		for(int i=1;i<=(x+1)/2;i++){
    			cout<<".";
    			if(flag[x][(x+1)/2+i]) cout<<"O";
    			else cout<<" ";
    		}
    	}
    	cout<<endl;
    }
    void f(){
    	system("cls");
    	for(int i=1;i<=18;i++) print(i);
    	Sleep(100);
    	cout<<endl;
    }
    int main(){
    	chip=3;
    	srand(time(0));
    	while(chip){
    		int chip1=chip;
    		flag[1][1]=1;
    		for(int i=1;i<=chip1;i++) x[i]=y[i]=1;
    		for(int i=1;i<=16;i++){
    			f();
    			for(int j=1;j<=chip1;j++){
    				flag[x[j]][y[j]]=0;
    				x[j]++;
    				if(rand()%2) y[j]++;
    				flag[x[j]][y[j]]=1;
    			}
    		}
    		f();
    		for(int j=1;j<=chip1;j++){
    			flag[x[j]][y[j]]=0;
    			if(y[j]==1||y[j]==17) chip+=499;
    			else if(y[j]==2||y[j]==16) chip+=19;
    			else if(y[j]==3||y[j]==15) chip+=4;
    			else if(y[j]==4||y[j]==14) chip+=2;
    			else if(y[j]==5||y[j]==13) chip+=1;
    			else if(y[j]==6||y[j]==12) chip-=1;
    		}
    		cout<<chip1<<"->"<<chip; 
    		Sleep(1000);
    	} 
    	return 0;
    }
    
    
    #include<bits/stdc++.h>
    #include<ctime>
    using namespace std;
    string rand_string(int k){//生成一个长度为 k 的随机字符串
    	string ans;
    	while(k--) ans+=char(rand()%96+32);
    	return ans;
    }
    int main(){
    	srand(time(0));
    	cout<<rand_string(100);
    	return 0;
    }
    
    #include<bits/stdc++.h>
    #include<ctime>
    using namespace std;
    string tostring(int i);
    int n=50;
    string str="XWC";
    void input(){
    	cout<<rand()<<" "<<rand();
    }
    void output(){
    	long long x,y;
    	cin>>x>>y;
    	cout<<x+y;
    }
    int main(){
    	srand(time(0));
    	for(int i=1;i<=n;i++){
    		freopen("CON","r",stdin);
    		freopen("CON","w",stdout);
    		string in,out;
    		in=str+tostring(i)+".in";
    		out=str+tostring(i)+".out";
    		freopen(in.c_str(),"w",stdout);
    		input();
    		freopen("CON","w",stdout);
    		freopen(in.c_str(),"r",stdin);
    		freopen(out.c_str(),"w",stdout);
    		output();
    		freopen("CON","r",stdin);
    		freopen("CON","w",stdout);
    	}
    	return 0;
    }
    string tostring(int i){
    	string ans;
    	if(i<10) ans=i+'0';
    	else{
    		ans=(i/10+'0');
    		ans+=(i%10+'0');
    	}
    	return ans;
    }
    

    暴力出奇迹

    卡常过样例

    挂机算数据

    打表出省一

    //快速幂
    #include<bits/stdc++.h>
    using namespace std;
    long long q_pow(long long a,long long b,long long mod){
    	long long ans=1;
    	while(b>0){
    		if(b%2){
    			ans*=a;
    			ans%=mod;
    		}
    		a*=a;
    		a%=mod;
    		b/=2;
    	}
    	return ans%mod;
    }
    int main(){
    	cout<<q_pow(1145141919810,100000000000000000,54188);
    	return 0;
    }
    

    今日florr刷怪区域(AU服):

    蚁穴,欢迎一起来刷

    每周六中午合卡

    //florr刷卡位置随机器
    #include<bits/stdc++.h>
    using namespace std;
    string s[10]={"花园","沙漠","丛林","海洋","蚁穴","下水道"};
    int main(){
    	srand(time(0));
    	cout<<s[rand()%6];
    	return 0;
    }
    

    Alt+F4可以快速补全代码

    florrflorr所有花瓣:

    加编号版

    ------我是一条可爱的分割线QWQ------

    《中国诗词大会》

    大风起兮云飞扬,意大利炮轰他娘

    巴山楚水凄凉地,蜜雪冰城甜蜜蜜

    但使龙城飞将在,Come on baby don't be shy

    问君能有几多愁,累了困了喝红牛

    垂死病中惊坐起,吃席麻烦先随礼

    ------我是一条可爱的分割线QWQ------

    确实是真理(看下面kkksc03发帖的日期): 阿斯米诺斯米斯

    ------我是一条可爱的分割线QWQ------

    以下是可玩资源

    florr突围!(中华好花花内):

    #include<bits/stdc++.h>
    #include<windows.h>
    #include<stdio.h>
    #include<stdlib.h>
    #include<conio.h>
    #include<time.h>
    using namespace std;
    typedef BOOL (WINAPI *PROCSETCONSOLEFONT)(HANDLE, DWORD);
    PROCSETCONSOLEFONT SetConsoleFont;
    /*
    普通图(普通、封锁、强化封锁):
    农场-Garden
    山谷-Desert
    北部山区-Ocean
    军港-Ant Hell
    矿区-Jungle
    
    高级图(封锁,强化封锁):
    前线要塞-Sewer
    电视台-Hel
    */
    void Color(int a){//白 绿 黄 蓝 紫 红 青 粉 淡绿 
        if(a==0) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_RED|FOREGROUND_GREEN|FOREGROUND_BLUE);
        
        if(a==1) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_GREEN); 
        
        if(a==2) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_RED|FOREGROUND_GREEN);
        
        if(a==3) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_BLUE); 
        
        if(a==4) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_RED|FOREGROUND_BLUE);
        
        if(a==5) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_RED);
        
        if(a==6) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_GREEN|FOREGROUND_BLUE); 
        
        if(a==7) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_RED|FOREGROUND_BLUE); 
        
        if(a==8) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_GREEN); 
    }
    string level[9]={"空","Common","Unusual","Rare","Epic","Legendary","Mythic","Ultra","Super"};
    double mer[9]={0,7000,4000,1500,500,100,30,1,0};
    
    int prize[9]={0,10,100,1000,5000,25000,100000,750000,1500000};//卡牌价格 
    int cost[9]={0,0,7,11,19,34,65,128,253};//神使制作的成本 
    
    int m_s[8]={0,10,14,16,8,20,10,8};//地图大小 
    
    int baolv[8][9]={//概率计算以万分之一为基础单位,此为普通
    	{0,0,0,0,0,0,0,0,0},
    	{0,10000,5000,1500,100,1,0,0,0},
    	{0,10000,4500,1750,150,2,0,0,0},
    	{0,10000,4750,1800,175,2,0,0,0},
    	{0,10000,5500,2000,200,5,1,0,0},
    	{0,10000,5000,2000,175,3,1,0,0},
    	{0,0,10000,2500,250,6,3,1,0},
    	{0,0,10000,3000,500,8,4,1,0}
    };
    int f_c(int ply,double mul){//捡到卡牌等级,危险区*1.2,封锁*1.5,强封*1.7 
    	for(int i=8;i>=1;i--){
    		if((double)(rand()%10000+1) <= (double)baolv[ply][i]*mul){
    			return i;
    		}
    	}
    }
    
    int e_mob[8][9]={//生成概率计算以万分之一为基础单位,此为普通
    	{0,0,0,0,0,0,0,0,0},
    	{0,10000,5000,1500,400,1,0,0,0},
    	{0,10000,4500,1750,450,2,0,0,0},
    	{0,10000,4750,1800,475,3,1,0,0},
    	{0,10000,5500,2000,500,10,3,1,0},
    	{0,10000,5000,2000,475,5,2,1,0},
    	{0,0,10000,5000,600,400,70,7,1},
    	{0,0,10000,5500,1000,500,100,10,2}
    };
    int ec_m(int ply,double mul){//怪物等级,危险区*1.2,封锁*1.4,强封*1.7 
    	for(int i=8;i>=1;i--){
    		if((double)(rand()%10000+1) <= (double)e_mob[ply][i]*mul){
    			return i;
    		}
    	}
    }
    
    int e_human_lv[4][8]={
    	{0,0,0,0,0,0,0,0},
    	{0,1,7,7,13,10,0,0},
    	{0,15,20,25,35,30,50,60},
    	{0,75,90,100,200,150,400,450}
    };
    int e_human_card[8][9]={//卡牌携带计算以万分之一为基础单位,此为普通
    	{0,0,0,0,0,0,0,0,0},
    	{0,10000,4000,700,200,1,1,0,0},
    	{0,10000,6000,1000,300,2,2,1,0},
    	{0,10000,6500,1500,400,3,2,1,0},
    	{0,10000,7500,3000,750,10,4,3,1},
    	{0,10000,7000,2000,600,5,2,2,1},
    	{0,0,0,10000,5000,1500,450,40,5},
    	{0,0,0,10000,6000,2000,500,50,7}
    };
    int ec_h(int ply,double mul){//人机玩家携带卡牌的的等级,危险区*1.2,封锁*1.63,强封*1.79 
    	if(mul==1.5 || mul==1.8){
    		mul/=1.5;
    		mul*=1.63;
    	}
    	else if(mul==1.7 || mul==2.04){
    		mul/=1.7;
    		mul*=1.79;
    	}
    	for(int i=8;i>=1;i--){
    		if((double)(rand()%10000+1) <= (double)e_human_card[ply][i]*mul){
    			return i;
    		}
    	}
    }
    
    POINT Windowpos(){
        POINT pt;
        GetCursorPos(&pt);
        HWND h=GetForegroundWindow();
        ScreenToClient(h,&pt);
        pt.x/=8;pt.y/=16;
        return pt;
    }
    
    void SetPos(int x,int y){
        COORD pos;
        pos.X=x,pos.Y=y;
        SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE),pos);
    }
    
    int wh[9],bp[9],wp[11],kl,lv=1,Exp,money=5000;
    bool flag;
    
    void game(int p_m,int dgr);
    void fight_m(int elv);
    void fight_p(int elv,int at,int x,int y);
    void liaison(int who);
    
    void Read(){
    	double qwq=0;
    	int iakioi;
        ifstream in("florr突围存档.txt");
        in>>lv>>kl>>Exp;
        if(!lv){
        	in.close();
        	return ;
        }
        qwq+=lv*0.37+kl*0.73+Exp*1.14;
        for(int i=1;i<=8;i++){
        	in>>wh[i];
        	qwq+=wh[i]*4.29;
        }
        for(int i=1;i<=10;i++){
        	in>>wp[i];
        	qwq+=wp[i]*8.12;
        }
        in>>money;
        qwq+=money*7.62;
        in>>iakioi;
        in.close();
        if((int)qwq!=iakioi){
        	cout<<"因为版本问题或擅自修改代码,存档无法正常读取。"<<endl;
        	Sleep(500);
        	cout<<"没事的,我会尽力保证这份存档还可以继续使用,但是我希望你自己没有改存档。"<<endl;
    		Sleep(500); 
    		cout<<"这边如果是版本问题的话,个人建议您重开一个档,不然可能会发生运行错误"<<endl;
    		Sleep(1000); 
        }
    }
    void Save(){
    	double qwq=0;
        ofstream out("florr突围存档.txt");
        out<<lv<<' '<<kl<<' '<<Exp<<endl;
        qwq+=lv*0.37+kl*0.73+Exp*1.14;
        for(int i=1;i<=8;i++){
        	out<<wh[i]<<' ';
        	qwq+=wh[i]*4.29;
        }
        out<<endl;
        for(int i=1;i<=10;i++){
        	out<<wp[i]<<' ';
        	qwq+=wp[i]*8.12;
        }
        out<<endl<<money;
        qwq+=money*7.62;
        out<<endl<<(int)qwq;
        out.close();
    }
    
    char xxx;
    int main(){
    	CONSOLE_CURSOR_INFO cursor_info={1,0}; 
    	SetConsoleCursorInfo(GetStdHandle(STD_OUTPUT_HANDLE),&cursor_info);
    	srand(time(NULL));
    	int cnt=0,x,y,hcsl;
    	kl=5;
    	for(int i=1;i<=5;i++){
    		wp[i]=1;
    		wh[1]++;
    	}
    	cout<<"是否读档?y/n"<<endl;
    	cin>>xxx;
    	if(xxx=='y'){
    		Read(); 
    	}
    	Sleep(500);
    	while(1){
    		system("cls");
    		cout<<"1.仓库"<<endl<<"2.合成"<<endl<<"3.联络人"<<endl<<"4.进入florr"<<endl;
    		cnt=0;
    		while(cnt<1 || cnt>4){
    			cin>>cnt;
    		}
    		if(cnt==1){
    			while(1){
    				system("cls");
    				cout<<"你的等级:"<<lv<<' '<<"你所拥有的Coin数量:"<<money<<endl;
    				Sleep(50);
    				cout<<"你目前携带的卡牌配置为:"<<endl;
    				for(int i=1;i<=kl;i++){
    					cout<<i<<": ";
    					Color(wp[i]);
    					cout<<level[wp[i]];
    					Color(0);
    					cout<<endl;
    				}
    				Sleep(100);
    				cout<<"你现在仓库内所有的卡牌:"<<endl;
    				for(int i=1;i<=8;i++){
    					cout<<i<<".";
    					Color(i);
    					cout<<level[i];
    					Color(0);
    					cout<<": "<<wh[i]<<"张"<<endl;
    				}
    				Sleep(100);
    				cout<<"请输入你要替换的卡牌(两个数字),输入0退出"<<endl;
    				cin>>x;
    				if(x==0){
    					break;
    				}
    				cin>>y;
    				if(x<1 || x>kl || y<1 || y>8 || wh[y]==0){
    					cout<<"替换失败";
    					Sleep(500);
    					continue;
    				}
    				wh[y]--;
    				wh[wp[x]]++;
    				wp[x]=y;
    				cout<<"替换成功!";
    				Sleep(500);
    			}
    			Save();
    		}
    		else if(cnt==2){
    			while(1){
    				system("cls");
    				cout<<"你现在仓库内所有的卡牌:"<<endl;
    				for(int i=1;i<=8;i++){
    					cout<<i<<".";
    					Color(i);
    					cout<<level[i];
    					Color(0);
    					cout<<": "<<wh[i]<<"张"<<endl;
    				}
    				cout<<"请输入你要合成的卡牌,输入0退出"<<endl;
    				x=-1;
    				while(x<0 || x>7){
    					cin>>x;
    				}
    				if(x==0){
    					break;
    				}
    				if(wh[x]<5){
    					cout<<"卡牌不足";
    				}
    				else{
    					hcsl=0;
    					cout<<"1.合成一次 2.一键合成"<<endl;
    					cnt=0;
    					while(cnt<1 || cnt>2){
    						cin>>cnt;
    					}
    					if(cnt==1){
    						wh[x]-=5;
    						if(rand()%20000+2>=20000-mer[x]*2){
    							hcsl++;
    						}	
    						else{
    							wh[x]+=1+rand()%4;
    						}
    					}
    					else{
    						while(wh[x]>=5){
    							wh[x]-=5;
    							if(rand()%20000+2>=20000-mer[x]*2){
    								hcsl++;
    							}
    							else{
    								cnt=1+rand()%4;
    								wh[x]+=cnt;
    							}
    						}
    					}
    					cout<<"你获得了"<<hcsl<<"张";
    					Color(x+1);
    					cout<<level[x+1];
    					Color(0);
    					cout<<"等级的卡牌!";
    					wh[x+1]+=hcsl;
    					Sleep(500);
    					Save();
    				}
    			}
    		}
    		else if(cnt==3){
    			while(1){
    				system("cls");
    				cout<<"1.Trader"<<endl<<"2.Oracle"<<endl<<"0.退出"<<endl;
    				cnt=-1;
    				while(cnt<0 || cnt>2){
    					cin>>cnt;
    				}
    				if(cnt==0){
    					break;
    				}
    				liaison(cnt);
    			}
    		}
    		else if(cnt==4){
    			system("cls");
    			cout<<"请选择要进入的模式,输入0退出"<<endl<<"1.战术行动"<<endl<<"2.封锁区(入场费1500Coin)"<<endl<<"3.强化封锁(入场费5000Coin)"<<endl;
    			y=-1;
    			while(y<0 || y>3){
    				cin>>y;
    			}
    			if(y==0){
    				continue;
    			}
    			else{
    				if(y==1){
    					cout<<"请选择要进入的地图,输入0退出"<<endl<<"1.Garden"<<endl<<"2.Desert"<<endl<<"3.Ocean"<<endl<<"4.Ant Hell"<<endl<<"5.Jungle"<<endl;
    					x=-1;
    					while(x<0 || x>5){
    						cin>>x;
    					}
    					if(x==0){
    						continue;
    					}
    				}
    				else{
    					if((y==2 && money<1500)||(y==3 && money<5000)){
    						cout<<"入场费不足,无法进入!"<<endl;
    						Sleep(1000);
                continue;
    					}
    					cout<<"请选择要进入的地图,输入0退出"<<endl<<"1.Garden"<<endl<<"2.Desert"<<endl<<"3.Ocean"<<endl<<"4.Ant Hell"<<endl<<"5.Jungle"<<endl<<"6.Sewer"<<endl<<"7.Hel"<<endl;
    					x=-1;
    					while(x<0 || x>7){
    						cin>>x;
    					}
    					if(x==0){
    						continue;
    					}
    				}
    				if(y==2){
    					money-=1500;
    				}
    				if(y==3){
    					money-=5000;
    				}
    				game(x,y);
    				Save();
    			}
    		}
    	}
    	return 0;
    }
    void fight_m(int elv){
    	flag=1;
    	int hp=175+lv*25,ehp=pow(3,elv-1)*(50-10+rand()%21),cnt,at=1,dam=0;
    	while(hp>0 && ehp>0){
    		system("cls");
    		cout<<"你的血量:"<<hp<<"怪物血量:"<<ehp;
    		Sleep(500);
    		if(at){
    			cout<<endl<<"1.攻击 2.迂回偷袭(概率失败) 3.逃跑"<<endl;
    			cnt=0;
    			while(cnt<1 || cnt>3)
    				cin>>cnt;
    			if(cnt==1){
    				if(rand()%1000<=950){
    					for(int i=1;i<=kl;i++){
    						dam+=pow(3,wp[i]-1)*(5+rand()%11);
    					}
    					cout<<"你打出了"<<dam<<"点伤害!";
    					ehp-=dam;
    				}
    				else{
    					cout<<"怪物躲过了你的攻击!";
    				}
    			}
    			else if(cnt==2){
    				if(rand()%5000<=1500){
    					for(int i=1;i<=kl;i++){
    						dam+=pow(3,wp[i]-1)*(15+rand()%26);
    					}
    					cout<<"偷袭成功,对怪物造成了"<<dam<<"点伤害!";
    					ehp-=dam;
    				}
    				else{
    					dam=pow(2,elv-1)*(1+rand()%10);
    					cout<<"偷袭失败,怪物对你造成了"<<dam<<"点伤害!";
    					hp-=dam; 
    				}
    			}
    			else{ 
    				if(rand()%1000<=elv*125){
    					cout<<"你逃跑了...";
    					return ;
    				}
    				else{
    					cout<<"怪物紧追不舍...";
    				}
    			}
    		}
    		else{
    			if(rand()%1000<=850){
    				dam=pow(3,elv-1)*(5+rand()%21);
    				cout<<endl<<"怪物对你造成了"<<dam<<"点伤害!";
    				hp-=dam;
    			}
    			else{
    				cout<<endl<<"你躲过了怪物的攻击!";
    			}
    		}
    		at=!at;
    		Sleep(1000);
    	}
    	if(hp<1){
    		Color(5);
    		cout<<endl<<"你被怪物击败了!";
    		Sleep(1000);
    		Color(0);
    		cout<<endl<<"你身上携带的所有卡牌全部丢失";
    		for(int i=1;i<=kl;i++){
    			wp[i]=0;
    		}
    		for(int i=1;i<=8;i++){
    			bp[i]=0;
    		}
    		Sleep(1000);
    		flag=0;
    	}
    	else{
    		cnt=pow(2,elv)*(rand()%5+1);
    		Color(2);
    		cout<<endl<<"你击败了怪物!";
    		Sleep(500);
    		cout<<endl<<"你获得了"<<cnt<<"点经验值!"<<endl;
    		Sleep(500);
    		Exp+=cnt;
    		while(Exp>=(5+5*lv)){
    			cout<<"你升级了!"<<endl;
    			Exp-=(5+5*lv);
    			lv++;
    			Sleep(250);
    		}
    		Color(0);
    		cout<<endl<<"你获得了以下战利品:";
    		cnt=(rand()%1000)%2+1;
    		Color(elv);
    		cout<<endl<<level[elv];
    		Color(0);
    		cout<<"卡牌"<<cnt<<"张";
    		bp[elv]+=cnt;
    		cnt=pow(2,elv);
    		if(elv!=8 && rand()%(cnt*2)==cnt){
    			Sleep(500);
    			Color(elv+1);
    			cout<<endl<<level[elv+1];
    			Color(0);
    			cout<<"卡牌1张";
    			bp[elv+1]++;
    		}
    		Sleep(1000);
    	}
    }
    
    int wp_e[9];
    
    void fight_p(int elv,int at,int x,int y){
    	flag=1;
    	int hp=175+lv*25,ehp=175+elv*25,cnt,dam=0;
    	for(int i=1;i<=kl;i++){
    		wp_e[i]=ec_h(x,y);
    	}
    	while(hp>0 && ehp>0){
    		system("cls");
    		cout<<"你的血量:"<<hp<<"对方血量:"<<ehp<<endl<<"对方卡牌配置:"<<endl;;
    		for(int i=1;i<=kl;i++){
    			Color(wp_e[i]);
    			cout<<level[wp_e[i]]<<endl;
    		}
    		Color(0);
    		Sleep(500);
    		if(at){
    			cout<<endl<<"1.攻击 2.迂回偷袭(概率失败) 3.逃跑"<<endl;
    			cnt=0;
    			while(cnt<1 || cnt>3)
    				cin>>cnt;
    			if(cnt==1){
    				if(rand()%2000<=1700-elv){
    					cnt=rand()%kl+1;
    					for(int i=1;i<=cnt;i++){
    						dam+=pow(3,wp[i]-1)*(5+rand()%11);
    					}
    					cout<<"你打出了"<<dam<<"点伤害!";
    					ehp-=dam;
    				}
    				else{
    					cout<<"敌人躲过了你的攻击!";
    				}
    			}
    			else if(cnt==2){
    				if(rand()%10000<=3000){
    					for(int i=1;i<=kl;i++){
    						dam+=pow(3,wp[i]-1)*(15+rand()%26);
    					}
    					cout<<"偷袭成功,对敌人造成了"<<dam<<"点伤害!";
    					ehp-=dam;
    				}
    				else{
    					cout<<"敌人躲过了你的偷袭!";
    				}
    			}
    			else{ 
    				cout<<"你逃跑了...";
    				return ;
    			}
    		}
    		
    		else{
    			if(hp>=ehp*3){
    				if(rand()%5000<=1500){
    					for(int i=1;i<=kl;i++){
    						dam+=pow(3,wp_e[i]-1)*(15+rand()%26);
    					}
    					cout<<"敌人偷袭了你,造成了"<<dam<<"点伤害!";
    					hp-=dam;
    				}
    				else{
    					cout<<"你躲过了敌人的偷袭!";
    				}
    			}
    			else{
    				if(rand()%2000<=1700-lv){
    					cnt=rand()%kl+1;
    					for(int i=1;i<=cnt;i++){
    						dam+=pow(3,wp_e[i]-1)*(5+rand()%11);
    					}
    					cout<<endl<<"敌人对你造成了"<<dam<<"点伤害!";
    					hp-=dam;
    				}
    				else{
    					cout<<endl<<"你躲过了敌人的攻击!";
    				}
    			}
    		}
    		at=!at;
    		Sleep(1000);
    	}
    	if(hp<1){
    		Color(5);
    		cout<<endl<<"你被敌人击败了!";
    		Sleep(1000);
    		Color(0);
    		cout<<endl<<"你身上携带的所有卡牌全部丢失";
    		for(int i=1;i<=kl;i++){
    			wp[i]=0;
    		}
    		for(int i=1;i<=8;i++){
    			bp[i]=0;
    		}
    		Sleep(1000);
    		flag=0;
    	}
    	else{
    		cnt=elv*5+5;
    		Color(2);
    		cout<<endl<<"你击败了敌人!";
    		Sleep(500);
    		cout<<endl<<"你获得了"<<cnt<<"点经验值!"<<endl;
    		Sleep(500);
    		Exp+=cnt;
    		while(Exp>=(5+5*lv)){
    			cout<<"你升级了!"<<endl;
    			Exp-=(5+5*lv);
    			lv++;
    			Sleep(250);
    		}
    		Color(0);
    		cout<<"你获得了如下战利品:";
    		for(int i=1;i<=kl;i++){
    			Color(wp_e[i]);
    			cout<<endl<<level[wp_e[i]];
    			Color(0);
    			cout<<"卡牌一张;";
    			bp[wp_e[i]]++;
    		}
    		cnt=rand()%kl+1;
    		Color(wp_e[cnt]);
    		cout<<endl<<level[wp_e[cnt]];
    		Color(0);
    		cout<<"卡牌一张;";
    		bp[wp_e[cnt]]++;
    		
    		Color(0);
    		Sleep(1000);
    		flag=1;
    	}
    }
    
    void game(int p_m,int dgr){
    	int hp=90+10*lv,cnt,rage=rand()%5+m_s[p_m]-2,card,clocknum,x,y;
    	double mul;
    	if(dgr==1){
    		mul=1;
    	}
    	else if(dgr==2){
    		mul=1.4;
    	}
    	else{
    		mul=1.7;
    	}
    	while(hp>0){
    		system("cls");
    		cout<<"你离撤离点还有"<<rage<<"单位距离"<<endl;
    		if(rage==m_s[p_m]/2){
    			Color(5);
    			cout<<"你现在处于危险区域!敌人强度和爆率均有提升!"<<endl;
    			Color(0);
    		}
    		Sleep(250);
    		cout<<"1.在附近闲逛 2.向撤离点移动 3.整理背包"<<endl;
    		cnt=0;
    		while(cnt<1 || cnt>3)
    			cin>>cnt;
    		if(cnt==1){
    			cout<<"闲逛中...";
    			Sleep(500);
    			if(rand()%1000<=600){
    				card=f_c(p_m,mul);
    				if(rage==m_s[p_m]/2){
    					card=f_c(p_m,mul*1.2);
    				}
    				cout<<endl<<"你在闲逛途中捡到了一张";
    				Color(card);
    				cout<<level[card];
    				Color(0);
    				cout<<"等级的卡牌!"; 
    				bp[card]++;
    			} 
    			else if(rand()%1000<=700){
    				cnt=ec_m(p_m,mul);;
    				if(rage==m_s[p_m]/2){
    					cnt+=ec_m(p_m,mul*1.2);
    				}
    				cout<<endl<<"你遭遇了一只";
    				Color(cnt);
    				cout<<level[cnt];
    				Color(0);
    				cout<<"等级的怪物!";
    				Sleep(1000);
    				fight_m(cnt); 
    				if(!flag){
    					return ;
    				}
    			}
    			else if(rand()%1000<=500){
    				cnt=e_human_lv[dgr][p_m]-2+rand()%5;
    				if(cnt<1) cnt=1;
    				cout<<endl<<"你遭遇了一名"<<cnt<<"级的敌人!";
    				Sleep(1000);
    				fight_p(cnt,rand()%2,p_m,mul); 
    				if(!flag){
    					return ;
    				}
    			}
    			else{
    				cout<<"...但是无事发生";
    				Sleep(1000); 
    			}
    		}
    		else if(cnt==2){
    			cout<<"正在移动中..."<<endl;
    			Sleep(500);
    			if(rand()%1000<=250 && rage!=1){
    				card=f_c(p_m,mul);
    				cout<<endl<<"你在路上捡到了一张";
    				Color(card);
    				cout<<level[card];
    				Color(0);
    				cout<<"等级的卡牌!"; 
    				bp[card]++;
    			} 
    			
    			if(rand()%1000<=600 && rage!=1){
    				cnt=ec_m(p_m,mul);
    				cout<<endl<<"你遭遇了一只";
    				Color(cnt);
    				cout<<level[cnt];
    				Color(0);
    				cout<<"等级的怪物!";
    				Sleep(1000);
    				fight_m(cnt); 
    				if(!flag){
    					return ;
    				}
    			}
    			else if(rand()%1000<=300 && rage!=1){
    				cnt=e_human_lv[dgr][p_m]-2+rand()%5;
    				if(cnt<1) cnt=1;
    				if(rage==5){
    					cnt+=rand()%3+1;
    				}
    				cout<<endl<<"你遭遇了一名"<<cnt<<"级的敌人!";
    				Sleep(1000);
    				fight_p(cnt,1,p_m,mul); 
    				if(!flag){
    					return ;
    				}
    			}
    			rage--;
    			if(rage==0){
    				cout<<"你已经抵达撤离点,正在等待传送..."<<endl;
    				Sleep(1000);
    				for(int i=10;i>=1;i--){
    					system("cls");
    					cout<<"撤离倒计时:"<<i;
    					clocknum=clock();
    					while(clock()-clocknum<1000);
    					if(rand()%1000<=(11-i)*20){
    						cnt=ec_m(p_m,mul);
    						cout<<endl<<"你遭遇了一只";
    						Color(cnt);
    						cout<<level[cnt];
    						Color(0);
    						cout<<"等级的怪物!";
    						Sleep(1000);
    						fight_m(cnt); 
    						if(!flag){
    							return ;
    						}
    					}
    					else if(rand()%1000<=(11-i)*10){
    						cnt=e_human_lv[dgr][p_m]-2+rand()%5;
    						if(cnt<1) cnt=1;
    						cout<<endl<<"你遭遇了一名"<<cnt<<"级的敌人!";
    						Sleep(1000);
    						fight_p(cnt,rand()%2,p_m,mul); 
    						if(!flag){
    							return ;
    						}
    					}
    				}
    				system("cls");
    				cout<<"撤离成功!!"<<endl;
    				Sleep(1000);
    				cout<<"你带出了如下物资:"<<endl;
    				for(int i=1;i<=8;i++){
    					if(bp[i]!=0){
    						Sleep(1000);
    						Color(i);
    						cout<<endl<<level[i];
    						Color(0);
    						cout<<"卡牌"<<bp[i]<<"张;";
    						wh[i]+=bp[i];
    						bp[i]=0;
    					}
    				}
    				Sleep(1000);
    				return ; 
    			}
    		}
    		else{
    			while(1){
    				system("cls");
    				cout<<"你的等级:"<<lv<<"   距离下次升级还需要:"<<5+(5*lv)-Exp<<endl;
    				Sleep(50);
    				cout<<"你目前的卡牌配置为:"<<endl;
    				for(int i=1;i<=kl;i++){
    					cout<<i<<": ";
    					Color(wp[i]);
    					cout<<level[wp[i]];
    					Color(0);
    					cout<<endl;
    				}
    				Sleep(100);
    				cout<<"你现在背包内所有的卡牌:"<<endl;
    				for(int i=1;i<=8;i++){
    					if(bp[i]){
    						cout<<i<<".";
    						Color(i);
    						cout<<level[i];
    						Color(0);
    						cout<<": "<<bp[i]<<"张"<<endl;
    					}
    				}
    				Sleep(100);
    				cout<<"请输入你要替换的卡牌(两个数字),输入0退出"<<endl;
    				cin>>x;
    				if(x==0){
    					break;
    				}
    				cin>>y;
    				if(x<1 || x>kl || y<1 || y>8 || bp[y]==0){
    					cout<<"替换失败";
    					Sleep(500);
    					continue;
    				}
    				bp[y]--;
    				bp[wp[x]]++;
    				wp[x]=y;
    				cout<<"替换成功!";
    				Sleep(500);
    			}
    		}
    		Sleep(500);
    	}
    }
    
    void liaison(int who){
    	int cnt,x;
    	char xxx;
    	cout<<"正在连线中...";
    	Sleep(500);
    	
    	if(who==1){
    		while(1){
    			system("cls");
    			cout<<"嗨!我是Trader,缺卡还是缺钱,我都能解决!"<<endl;
    			cout<<"请问您有什么需要?"<<endl<<"1.购买卡牌"<<endl<<"2.售卖卡牌"<<endl<<"0.离开"<<endl;
    			cnt=-1;
    			while(cnt<0 || cnt>2){
    				cin>>cnt;
    			}
    			if(cnt==0){
    				cout<<"好吧,那记得常来看看啊!说不定哪天你就需要什么了。";
    				Sleep(1000);
    				break ;
    			}
    			if(cnt==1){
    				while(1){
    					system("cls");
    					cout<<"那你可找对人了!至于价格嘛,嘿嘿,那就要看我随机翻出来的那张卡有多贵啦。"<<endl;
    					cout<<"你所拥有的Coin数量:"<<money<<endl; 
    					for(int i=1;i<=8;i++){
    						cout<<i<<".购买一张";
    						Color(i);
    						cout<<level[i];
    						Color(0);
    						cout<<"卡牌"<<endl;
    					}
    					cout<<"0.退出"<<endl;
    					cnt=-1;
    					while(cnt<0 || cnt>8){
    						cin>>cnt;
    					}
    					if(cnt==0){
    						cout<<"如果又需要卡了,随时来啊!";
    						Sleep(1000); 
    						break;
    					}
    					x=(int)((double)prize[cnt]*(rand()%41+80)/100.0);
    					cout<<"这张";
    					Color(cnt);
    					cout<<level[cnt];
    					Color(0);
    					cout<<"卡牌的价值是"<<x<<"个Coin,要不要?(y/n)"<<endl;
    					cin>>xxx;
    					if(xxx=='y'){
    						if(money<x){
    							cout<<"额,抱歉啦哥们儿,你买不起。";
    						}
    						else{
    							cout<<"好嘞!您拿好啦。";
    							money-=x;
    							wh[cnt]++; 
    							Save();
    						}
    					}
    					else{
    						cout<<"好吧,你说不定要再考虑一下。";
    					}
    					Sleep(1000);
    				}
    			}
    			else if(cnt==2){
    				while(1){
    					system("cls");
    					cout<<"想要卖卡?来吧,品质决定我出的钱。"<<endl;
    					cout<<"你所拥有的Coin数量:"<<money<<endl; 
    					for(int i=1;i<=8;i++){
    						cout<<i<<".出售库存为"<<wh[i]<<"张的";
    						Color(i);
    						cout<<level[i];
    						Color(0);
    						cout<<"卡牌"<<endl;
    					}
    					cout<<"0.退出"<<endl;
    					cnt=-1;
    					while(cnt<0 || cnt>8){
    						cin>>cnt;
    					}
    					if(cnt==0){
    						cout<<"好吧,下次有什么用不着的好货记得来找我哟!";
    						Sleep(1000); 
    						break;
    					}
    					if(wh[cnt]==0){
    						cout<<"抱歉啦,你似乎没有这种卡牌";
    						Sleep(750);
    						continue; 
    					}
    					cout<<"1.出售一张(大概获得:"<<(int)((double)prize[cnt]/1.2)<<"Coin)"<<endl<<"2.全部出售(大概获得:"<<(int)((double)prize[cnt]/1.2)*wh[cnt]<<"Coin)"<<endl<<"0.不出售"<<endl;
    					x=-1;
    					while(x<0 || x>2)
    						cin>>x;
    					if(x==0){
    						cout<<"好吧,你说不定要再考虑一下。";
    					}
    					else if(x==1){
    						x=(int)((double)prize[cnt]*(rand()%41+80)/120.0);
    						cout<<"好嘞!这是你应得的钱。"<<endl<<"你获得了"<<x<<"个Coin!";
    						money+=x;
    						wh[cnt]--; 
    						Save();
    					}
    					else{
    						x=0;
    						for(int i=1;i<=wh[cnt];i++){
    							x+=(int)((double)prize[cnt]*(rand()%41+80)/120.0);
    						}
    						cout<<"好嘞!这是你应得的钱。"<<endl<<"你获得了"<<x<<"个Coin!";
    						money+=x;
    						wh[cnt]=0; 
    						Save();
    					}
    					Sleep(1000);
    				}
    			}
    		}
    	}
    	if(who==2){
    		while(1){
    			system("cls");
    			cout<<"当人们考虑到某个特定的未来时,就是一种模糊的异常,这种事真是令人烦恼..."<<endl;
    			cout<<"一次,一次,又一次...小心你的愿望,陌生人。"<<endl;
    			cout<<"1.兑换卡牌"<<endl<<"0.退出"<<endl;
    			cnt=-1;
    			while(cnt<0 || cnt>1){
    				cin>>cnt;
    			}
    			if(cnt==0){
    				cout<<"为不可预见的后果做好准备,陌生人...我能看见未来。";
    				Sleep(1000);
    				break;
    			}
    			else if(cnt==1){
    				while(1){
    					system("cls");
    					cout<<"我们可以公平地交换..."<<endl;
    					cout<<"陌生人,你最好明智地做选择。"<<endl;
    					for(int i=1;i<=8;i++){
    						cout<<i<<".";
    						Color(i);
    						cout<<level[i];
    						Color(0);
    						cout<<"卡牌,库存"<<wh[i]<<"张   ";
    						if(i==1){
    							cout<<"(无法兑换)"<<endl;
    						}
    						else{
    							cout<<"(需要"<<cost[i]<<"张";
    							Color(i-1);
    							cout<<level[i-1];
    							Color(0);
    							cout<<"卡)"<<endl;
    						}
    					}
    					cout<<"0.退出"<<endl<<"(输入你想要兑换的卡牌)"<<endl;
    					cnt=-1;
    					while(cnt<0 || cnt>8){
    						cin>>cnt;
    					}
    					if(cnt==0){
    						cout<<"‘如果’并不是一个我常用的词...但如果不是现在,又是什么时候呢...";
    						Sleep(1000);
    						break; 
    					}
    					if(cnt==1){
    						cout<<"我似乎患有盲点...陌生人,解释一下...";
    						Sleep(1000);
    						continue;
    					}
    					cout<<"(确定花费"<<cost[cnt]<<"张";
    					Color(cnt-1);
    					cout<<level[cnt-1];
    					Color(0);
    					cout<<"卡牌来兑换一张";
    					Color(cnt);
    					cout<<level[cnt];
    					Color(0);
    					cout<<"卡牌吗?  y/n)"<<endl; 
    					cin>>xxx;
    					if(xxx=='y'){
    						if(wh[cnt-1]<cost[cnt]){
    							cout<<"(你的库存似乎不支持你兑换这张卡)";
    						}
    						else{
    							cout<<"我一直在等待这一刻...";
    							Sleep(500);
    							cout<<endl<<"早有人寓言,这就是那一刻..."<<endl;
    							Sleep(500);
    							cout<<"(你获得了一张";
    							Color(cnt);
    							cout<<level[cnt];
    							Color(0);
    							cout<<"卡牌!)"; 
    							wh[cnt-1]-=cost[cnt];
    							wh[cnt]++;
    							Save();
    						}
    					}
    					else{
    						cout<<"不要害怕承诺,陌生人...";
    					}
    					Sleep(1000);
    				}
    			}
    		}
    	}
    }
    

    ------我是一条可爱的分割线QWQ------

    以下是可用资源

    1.极域解锁密码:Admin@123 ->用法:左键右下角极域按键->设置->输入Admin@123->网络->选择教师登录即可kill极域,若改回来同样的方法点击自动登录,且可以改密码

    2.Windows+Tab键可以新建桌面,可以将窗口拖至不同的桌面,Ctrl+Windows+快速切换相邻的桌面

    3.Ctrl+Shift+Esc打开任务管理器,或者右键下方任务栏打开,可以将其设为置于顶层,并且其图层在全屏广播之上,可以最小化广播(不可关闭,被拒绝访问)

    4.↑↑↑接上文,关闭全屏广播后可能有键盘锁,右键下方极域标志打开设置(即输密码界面),不输入密码直接关掉即可,密码锁便可解除,但是在该情况下一般按键可以使用,但是会被禁Windows

    ------我是一条可爱的分割线QWQ------

    以下是网站资源

    florr.io(肝帝必备,适合长期玩)

    digdig.io(休闲,不太适合长期玩)

    ------我是一条可爱的分割线QWQ------

    以下是其它

    本人洛谷名曰XIAOWANGCHAI

    本人洛谷团队(戳我),欢迎大家加入(doge)

    代码资源

    //调整颜色,调整后即可改颜色
    #include<bits/stdc++.h>
    #include<windows.h>
    #include<stdio.h>
    #include<stdlib.h>
    #include<conio.h>
    #include<time.h>
    using namespace std;
    void Color(int a){//白 绿 黄 蓝 紫 红 青 粉 淡绿 
        if(a==0) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_RED|FOREGROUND_GREEN|FOREGROUND_BLUE);
        
        if(a==1) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_GREEN); 
        
        if(a==2) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_RED|FOREGROUND_GREEN);
        
        if(a==3) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_BLUE); 
        
        if(a==4) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_RED|FOREGROUND_BLUE);
        
        if(a==5) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_RED);
        
        if(a==6) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_GREEN|FOREGROUND_BLUE); 
        
        if(a==7) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_RED|FOREGROUND_BLUE); 
        
        if(a==8) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_GREEN); 
    }
    int main(){
      Color(8);
      cout<<114514;
    	return 0;
    }
    
    #include<bits/stdc++.h>
    #include<windows.h>
    #include<ctime>
    #define int long long
    #define cls system("cls")
    using namespace std;
    void intt1();
    void intt2();
    void print_string(string s);
    void tujian();
    void kaishi();
    void shuoming();
    signed main(){
    	srand(time(NULL));
    	intt1();
    	while(1){
    		intt2();
    		string op;
    		string ryj;
    		cin>>op;
    		if(op=="1"){
    			tujian();	
    			cout<<"输入 任意键 返回"<<endl;
    			cin>>ryj;
    		}
    		if(op=="2"){
    			shuoming();
    			cout<<"输入 任意键 返回"<<endl;
    			cin>>ryj;
    		}
    		if(op=="3"){
    			kaishi();
    			cin>>ryj;
    		}
    		if(op=="4"){
    			break;
    		}
    	}
    	return 0;
    }
    void intt1(){
    	cout<<"florr杀"<<endl;Sleep(500);
    	cout<<"作者:XIAOWANGCHAI 违者必究(doge)"<<endl;
    	Sleep(500);
    	cls;
    }
    void intt2(){
    	cls;	
    	print_string("1.图鉴");	
    	print_string("2.说明");	
    	print_string("3.开始");	
    	print_string("4.退出");	
    	cout<<"请输入编号"<<endl;
    }
    void print_string(string s){
    	Sleep(10);
    	cout<<s<<endl<<endl;
    }
    void tujian(){
    	cls;
    	
    }
    void shuoming(){
    	cls;
    }
    void kaishi(){
    	cls;
    }
    
  • 通过的题目

  • 最近活动

    This person is lazy and didn't join any contests or homework.
  • 最近编写的题解

    This person is lazy and didn't write any solutions.
  • Stat

  • Rating

题目标签

系统测试
1
交互题
1
Special Judge
1