最近的事情更无语了,某鱼上现在有三个人在卖数据了。周赛数据永久停止更新。

不允许学生创建新讨论了,后面大家可以在这里讨论相关内容。会定期清理。

删了一些同学们自己举办的比赛的帖子。

我建议你们可以私聊参赛。讨论区太乱了,有些提问我看不到了已经。

更重要的是,还是先好好学算法吧各位同学,当你拿了提高组 200200 分,再考虑自己举办一些简单的比赛。

语法场的初心还是为了学生们巩固基础语法,高水平选手可以选择参加入门语法场和入门提高场 目前也没看见能打的 (参考新春马拉松赛成绩)

感觉不过瘾还可以打atcoder和codeforces

546 条评论

  • 第一次...

    • @ 2026-8-14 13:58:01

      P1019 67分求调

      #include <bits/stdc++.h>
      using namespace std;
      int n;
      string word[25];
      int used[25];
      int ans=0;
      char startch;
      int op(string A,string B) 
      {
          int la=A.size(),lb =B.size();
          int maxk = 0;
          for (int k=1;k<min(la,lb);k++)
          {
              bool match=true;
              for (int i=0;i<k;i++) 
              {
                  if(A[la-k+i]!=B[i]) 
                  {
                      match=false;
                      break;
                  }
              }
              if(match)maxk=k; 
          }
          return maxk;
      }
      void dfs(int last,int len)
      {
          ans=max(ans,len);
          for(int i=1;i<=n;i++)
          {
              if(used[i]>=2)continue;
              int k=op(word[last],word[i]);
              if(k==0)continue;
              used[i]++;
              dfs(i,len+word[i].size()-k);
              used[i]--;
          }
      }
      int main()
      {
          cin>>n;
          for(int i=1;i<=n;i++)
          {
              cin>>word[i];
          }
          cin>>startch;
          for(int i=1;i<=n;i++)
          {
              if(word[i][0]==startch)
              {
                  used[i]++;
                  dfs(i,word[i].size());
                  used[i]--;
              }
          }
          cout<<ans<<endl;
          return 0;
      }
      
      • @ 2026-8-14 17:57:39

        因为你的op函数从小到大,所以你的返回值会是最大的公共段,但是如果出现小的公共段,肯定更优(重复的较少),所以找到第一个match的,就break掉。

        #include <bits/stdc++.h>
        using namespace std;
        int n;
        string word[25];
        int used[25];
        int ans=0;
        char startch;
        int op(string A,string B) 
        {
        	int la=A.size(),lb =B.size();
        	int maxk = 0;
        	for (int k=1;k<min(la,lb);k++)
        	{
        		bool match=true;
        		for (int i=0;i<k;i++) 
        		{
        			if(A[la-k+i]!=B[i]) 
        			{
        				match=false;
        				break;
        			}
        		}
        		if(match){maxk=k; break;}
        	}
        	return maxk;
        }
        void dfs(int last,int len)
        {
        	ans=max(ans,len);
        	for(int i=1;i<=n;i++)
        	{
        		if(used[i]>=2)continue;
        		int k=op(word[last],word[i]);
        		if(k==0)continue;
        		used[i]++;
        		dfs(i,len+word[i].size()-k);
        		used[i]--;
        	}
        }
        int main()
        {
        	cin>>n;
        	for(int i=1;i<=n;i++)
        	{
        		cin>>word[i];
        	}
        	cin>>startch;
        	for(int i=1;i<=n;i++)
        	{
        		if(word[i][0]==startch)
        		{
        			used[i]++;
        			dfs(i,word[i].size());
        			used[i]--;
        		}
        	}
        	cout<<ans<<endl;
        	return 0;
        }
        
        
      • @ 2026-8-14 18:34:07

        @ 谢谢

    • 谢谢

      • 发代码如何有格式而不是一坨
        力求!!!!!! 好人一生平安

      • @ 2026-8-6 8:33:07

        为什么不给我发硬币和徽章

        • 不会写高精度如何骗更多分

          double的范围是可以到正负pow(10,308)

        • 1

          • 1

            • 这代码会超时 你敢信 n最大pow(10,5);

              #include<bits/stdc++.h>
              using namespace std;
              using ll=long long;
              int n,w;
              int score[100005];
              bool cmp(int x,int y)
              {
                  return x>y;
              }
              int main()
              {
                  cin>>n>>w;
                  for(int i=1;i<=n;i++)
                  {
                      cin>>score[i];
                      if(score[i]>score[i-1]) sort(score+1,score+1+i,cmp);
                      int plan=max(1,i*w/100);
                      cout<<score[plan]<<" ";
                  }
                  return 0;
              }
              
              
              • P5661公交换乘洛谷45挖土机55 洛谷样例全对,错误测试点均TLE求调

                #include<bits/stdc++.h>
                using namespace std;
                using ll=long long;
                int n;
                ll sum;
                int way,price,tim;
                int cnt;//统计优惠票数量
                struct youhui
                {
                    int time;
                    int money;
                }yh[100005];
                int main()
                {
                    cin>>n;
                    for(int i=1;i<=n;i++)
                    {
                        cin>>way>>price>>tim;
                        if(way==0)//地铁
                        {
                            cnt++;
                            yh[cnt].time=tim;
                            yh[cnt].money=price;
                            sum+=price;
                        }
                        else//公交
                        {
                            if(cnt>0)
                            {
                                int flag=0;
                                for(int i=1;i<=cnt;i++)
                                {
                                    if(yh[i].time==-1) continue;
                                    if(tim-yh[i].time<=45&&yh[i].money>=price)
                                    {
                                        flag=1;
                                        yh[i].time=-1;
                                        break;
                                    }
                                }
                                if(flag==0) sum+=price;
                            }
                            else sum+=price;
                        }
                    }
                    cout<<sum;
                    return 0;
                }
                
                
                • @ 2026-8-3 15:46:50
                  using namespace std;
                  struct shi_jian
                  {
                      int money,time;
                  }arr[100005];
                  int used[100005];
                  int main()
                  {
                      ios::sync_with_stdio(0);
                      cin.tie(0);
                      int n,head=1;
                      cin>>n;
                      int xia_biao=1,sum=0;
                      while(n--)
                      {
                          int num,piece,t;
                          cin>>num>>piece>>t;
                          if(num==0)
                          {
                              sum+=piece;
                              arr[xia_biao].money=piece;
                              arr[xia_biao].time=t;
                              xia_biao++;
                          }
                          else
                          {
                              while(head <= xia_biao && t - arr[head].time > 45) {
                                  head++;
                              }
                              int cnt=0;
                              for(int i=head;i<=xia_biao;i++)
                              {
                                  if(arr[i].money>=piece&&t-arr[i].time<=45&&used[i]==0)
                                  {
                                      used[i]=1;
                                      cnt++;
                                      break;
                                  }
                              }
                              if(cnt==0)sum+=piece;
                          }
                      }
                      cout<<sum;
                  }
                  
                  
                • @ 不要把自己的代码发给我

                • @ 2026-8-3 16:55:22

                  @ 要说错哪了

                • @ 2026-8-12 15:00:38

                  @ 你是不是@错人了

              • @ 2026-8-3 14:50:03

                -3148?!

                • 1.千问 2.元宝

                • 这人有病吧

                • @ 2026-8-3 11:18:05

                  …………………………

                  • GAY吧

                    • @ 2026-8-3 9:55:28

                      这又给我干哪来了

                      • @ 2026-8-3 9:52:49

                      • @ 2026-8-3 9:52:02

                        看来我真的穿越了

                        • @ 2026-8-3 9:47:49

                          我穿越了吗

                          • 这人-ay吧

                            • 423r35

                              • ?????

                              • 观后感 be like 后两个字

                                • 何意味

                                  ???

                                • ??,何意味

                                  • 从百草园训到三味书屋

                                    作者 akakal 发布时间 2025-11-19 10:55 分类 休闲·娱乐 我家的后面有一个很大的机房,。现在是早已并屋子一起卖给学校的教练了,连那最末次的相见也已经隔了几年,其中似乎确凿只有一些电脑和桌凳;但那时却是我的乐园。

                                    不必说绿色的 AC,红色的 WA,深色的 MLE TLE,黄色的 CE;也不必说 LCA 拎着俩节点在树上乱跑,验题人拿着鞭子追着出题人,一个 Au✌️突然疯疯癫癫地向外省跑去了。单是周围的一车算法书,就有无限趣味。

                                    学长曾经讲给我一个故事听:先前,有一个 OIer 住在机房里加训,晚间,在看算法学习的时候,突然听到有人在叫他打游戏。答应着,四面看时,却见同学都在敲代码,向他一笑,关掉 dev-c++ 和 Edge 了。他很高兴地准备打游戏;但竟给那走来找他讲算法的学长识破了机关。说他同学有问题,一定遇见 faker 了;这是天天说 p 话和装不努力的同学,教你打游戏,倘一答应,晚些正赛的时候你就被他们拉的十万八千里远!他自然吓得要死,而那学长却道无妨,给他一个做题热度统计图,说只要挂主页,便可安心打游戏。他虽然照样办,却总是玩不进去,——当然玩不进去。到第二天,果然出猫腻了!翻开那主页,绿的蓝的紫的黑的;深的浅的不深不浅的,那同学们做了好多题!打开模拟赛成绩一看,rank1 还在哭嚎说自己打的依托,真乃过分!

                                    结末的教训是:所以同学叫你的去打游戏,你万万不可答应他。

                                    这故事很使我觉得做人之险,打游戏时,往往有些担心。打模拟赛时,也常常这样想。但直到现在,总还没有遇见过。叫我打游戏的声音自然是常有的,然而都不是在机房训练的时候罢。

                                    我不知道为什么家里的人要将我送进集训里去了,而且还是全城中称为最强的集训。也许是因为周末喜欢窝床上打游戏罢,也许是因为写树剖重儿子的重儿子是自己罢,也许是因为写完正解然后 MLE 罢……都无从知道。总而言之:我将不能常到机房了。

                                    ……

                                    不知从哪里听来的,教练也很渊博,他认识一种算法,名曰“树上背包套线段树套重链剖分套基环树套平衡树套红黑树拌水泥钢筋混凝土套树状数组套后缀自动机套拌最好吃的意大利面”,我很想详细地知道这故事,但 OI-wiki 是不知道的,因为它很多都模糊不清。现在得到机会了,可以问先生。

                                    “先生,‘树上背包套线段树套重链剖分套基环树套平衡树套红黑树拌水泥钢筋混凝土套树状数组套后缀自动机凉咔久久套拌最好吃的意大利面’这算法,是怎么一回事?”我交完代码,将要退下来的时候,赶忙问。

                                    “不知道!”他似乎很不高兴,脸上还有怒色了。

                                    我才知道做学生是不应该问这些事的,只要加训,因为他是渊博的顶级教练,决不至于不知道,所谓不知道者,乃是不愿意说。比我牛的人,往往如此,我遇见过好几回了。

                                    我就只加训,上午打模拟赛,正午补题,晚上练算法。教练最初这几天对我很严厉,后来却好起来了,不过给我训的题越来越多,难度也渐渐地加上字去,从绿题到蓝题,终于到黑题了。

                                    电脑里面有个网页唤做 OI 教练模拟器,虽然简洁,但也十分好玩。然而同学们玩的太多,太久,

                                    “人都在看什么呢!”

                                    便一个个赶忙关掉电脑;一同打开 www.luogu.com.cn 和题目,也不行的。他有一个极域软件,但是不常用,也有看浏览记录的规则。但也懒得全罚,便瞪几眼,大声道:

                                    “加训!”

                                    十一月十九日。

                                  • 666

                                    王润杨是GAY

                                  • @ 2026-8-1 8:50:05

                                    Wow

                                  • 666

                                    这么简单的题

                                    竟然65分

                                    我的AC代码

                                    #include<iostream>
                                    #include<cstring>
                                    #include<queue>
                                    #include<cstdio>
                                    #include<cmath>
                                    #include<algorithm>
                                    #include<map>
                                    #include<vector>
                                    #include<stack>
                                    #include<sstream>
                                    #include<set>
                                    #include<unordered_set>
                                    #include<time.h>
                                    #include<stdlib.h>
                                    #include<unordered_map>
                                    #include<random>
                                    #include<iomanip>
                                    #include<climits>
                                    #define ll long long
                                    #define ull unsigned long long
                                    #define eps 1e-10
                                    #define INF 1e9
                                    #define delta 0.996
                                    #define pi acos(-1.0)
                                    #define ld long double
                                    #define vl vector<long long>
                                    const ll mod1 = 1e9 + 7;
                                    const ll mod2 = 998244353;
                                    const ll mod3 = 1e9;
                                    const int maxn = 3e5 + 10;
                                    const int maxm = 5e5 + 10;
                                    const int maxq = 5e5 + 10;
                                    const int nn = maxn * 20;
                                    const ll inf = 1e18L;
                                    using namespace std;
                                    typedef pair<int,int>Pii;
                                    typedef pair<ll ,int>Pli;
                                    typedef pair<int, pair<int, int>>Pi;
                                    typedef pair<string, Pi>psp;
                                    typedef pair<int, vector<int>>piv;
                                    typedef pair<ll, ll>P;
                                    #define ll long long
                                    
                                    int main(){
                                    	int n,p,q;
                                    	cin>>n>>p>>q;
                                    	while(n--){
                                    		int a,b;
                                    		cin>>a>>b;
                                    		if(a==b){
                                    			cout<<"0"<<endl;
                                    		}else if(a==1||b==1){
                                    			cout<<p<<endl;
                                    		}else if(__gcd(a,b)==1){
                                    			cout<<min(p,q*2)<<endl;
                                    		}else{
                                    			cout<<min(p*2,q)<<endl;
                                    		}
                                    	}
                                    	return 0;
                                    }
                                    
                                    
                                  • @ 2026-7-31 16:42:33

                                    服了

                                  • 你们知道怎么在讨论区发评论吗 会的教我一下

                                  • @ 2026-7-30 17:59:46

                                    取名阶段取:圣战斗士有彩蛋

                                  • @ 2026-7-30 17:58:11
                                    #include<bits/stdc++.h>
                                    #include<windows.h>
                                    #include<time.h>
                                    using namespace std;
                                    #define int long long
                                    int ji,money,xueliang,gongji,jingyan,zcxueliang,kefuhuocishu,jianshang;
                                    string name;
                                    struct N
                                    {
                                    	int shuliang;
                                    	bool pdgoumai;
                                    	string qijuname;
                                    }a[25];
                                    bool kehuo=false,keshui=false;
                                    void fangjuheishi();    
                                    void qingkuang();
                                    void daguai(int guaiji,bool guding,bool shuxin);
                                    void zhiliao();
                                    void heishi();
                                    void zhujiemian();
                                    void shengji(); 
                                    void xingyunzhuanpan(); 
                                    void wuqiheishi();
                                    void xiyouheishi();
                                    void toukuiheishi();
                                    void tishi();
                                    void leizhutiaozhansai();
                                    void guanyu();
                                    void maoxian();
                                    signed main()
                                    {
                                    	for(int i=1;i<20;i++)
                                    	{
                                    		a[i].pdgoumai=false;
                                    		a[i].shuliang=0; 
                                    	}
                                        system("color f4");
                                        string s="打怪小游戏"; 
                                        for(int i=1;i<=s.size();i++)
                                        {
                                            cout<<s[i-1];
                                            Sleep(100);
                                        }
                                        cout<<'\n'<<"请留下你的大名:";
                                        cin>>name; 
                                        xueliang=zcxueliang=15;
                                        ji=1;
                                        gongji=7.5;
                                        if(name=="圣战斗士") 
                                        {
                                            cout<<"古老的血脉终于觉醒了!!!";
                                        	cout<<'\n';
                                            xueliang=zcxueliang=30;
                                            ji=1;
                                            gongji=15;
                                            Sleep(2000);
                                        } 
                                        guanyu();
                                        system("pause");
                                        system("cls");
                                        cout<<endl;
                                        zhujiemian(); 
                                        return 0;
                                    }
                                    void daguai(int guaiji,bool guding,bool shuxin)
                                    {
                                        system("cls");
                                        double guaiwuji;
                                        cout<<"怪物等级:";
                                        if(guding==false) cin>>guaiwuji;
                                        else
                                        {
                                            guaiwuji=guaiji;
                                            cout<<guaiji<<'\n';
                                        }
                                        double guaiwuxue=guaiwuji*5;
                                        double guaiwugong=guaiwuji;
                                        if(guaiwuji>ji) 
                                            cout<<"可能有风险。"<<'\n';
                                        if(shuxin==true)
                                        {
                                            long long s=time(NULL)%3; 
                                            if(s==1&&kehuo==false)
                                            {
                                                cout<<"火焰属性!!!"<<'\n';
                                                guaiwugong+=ji/2;   
                                            } 
                                            if(s==2&&keshui==false)
                                            {
                                                cout<<"冰雪属性!!!"<<'\n';
                                                guaiwuxue+=ji;  
                                            } 
                                        }
                                        for(;;)
                                        {
                                            if(time(NULL)%100!=0||time(NULL)%100!=50||time(NULL)%100!=90) guaiwuxue-=gongji;
                                            else
                                    		{
                                    			guaiwuxue-=10*gongji;
                                    			cout<<"暴击"<<'\n'; 
                                    		}
                                            cout<<"怪物当前血量:"<<guaiwuxue<<endl; 
                                            if(guaiwuxue<=0)
                                            {
                                                cout<<name<<"胜利了"<<endl;
                                                money+=guaiwuji*30;
                                                jingyan+=guaiwuji*10;
                                                int s=time(NULL)%100;
                                                if(s==1) 
                                                {
                                                	cout<<"掉落了圣剑"<<endl;
                                    				a[5].pdgoumai=true;
                                    				a[5].shuliang++;
                                    				gongji+=600;
                                    			}
                                    			else if(s==0||s==52||s==93) 
                                                {
                                                	cout<<"掉落了钻石剑"<<endl;
                                    				a[4].pdgoumai=true;
                                    				a[4].shuliang++;
                                    				gongji+=121;
                                    			}
                                    			else if(s==6||s==17||s==28||s==39) 
                                                {
                                                	cout<<"掉落了铁剑"<<endl;
                                    				a[3].pdgoumai=true;
                                    				a[3].shuliang++;
                                    				gongji+=57;
                                    			}
                                    			else if(s==36||s==13||s==94||s==75||s==41) 
                                                {
                                                	cout<<"掉落了木剑"<<endl;
                                    				a[2].pdgoumai=true;
                                    				a[2].shuliang++;
                                    				gongji+=23;
                                    			}
                                    			else if(s==37||s==14||s==95||s==76||s==48||s==89||s==99)
                                                {
                                                	cout<<"掉落了小刀"<<endl;
                                    				a[1].pdgoumai=true;
                                    				a[1].shuliang++;
                                    				gongji+=10;
                                    			}
                                                system("pause");
                                                zhujiemian();
                                            }
                                            if(jianshang!=0) cout<<"减伤"<<jianshang<<"点了,自己受伤害"<<(xueliang-(guaiwugong-jianshang)>zcxueliang)?zcxueliang-xueliang:(guaiwugong-jianshang);
                                            xueliang-=(guaiwugong-jianshang);
                                            if(xueliang>zcxueliang) xueliang=zcxueliang;
                                            cout<<name<<"当前血量:"<<xueliang<<endl; 
                                            if(xueliang<=0)
                                            {
                                                if(kefuhuocishu>=1)
                                                {
                                                    kefuhuocishu-=1;
                                                    cout<<name<<"使用复活甲复活了.";
                                                    xueliang=zcxueliang;
                                                    continue; 
                                                }
                                                else
                                                {
                                                    cout<<name<<"死了";
                                                    exit(0);
                                                }
                                            }
                                        }
                                    }
                                    void zhujiemian()
                                    {
                                    	a[1].qijuname="小刀",a[2].qijuname="木剑",a[3].qijuname="铁剑",a[4].qijuname="钻石剑",a[5].qijuname="圣剑";
                                    	a[6].qijuname="木甲",a[7].qijuname="铁甲",a[8].qijuname="钢甲",a[9].qijuname="钻石甲",a[10].qijuname="圣衣";
                                    	a[11].qijuname="木盔",a[12].qijuname="铁盔",a[13].qijuname="钢盔",a[14].qijuname="钻石盔",a[15].qijuname="圣盔";
                                    	a[16].qijuname="复活甲",a[17].qijuname="克火靴",a[18].qijuname="克水靴";
                                        system("cls");
                                        cout<<"1.打怪  2.提示  3.黑市  4.升级  5.情况  6.幸运转盘  7.擂主挑战赛  8.关于游戏  9.冒险(10级以上)"<<endl; 
                                        int x1;
                                        cin>>x1;
                                        if(x1==1) daguai(0,false,true);
                                        if(x1==2) tishi();
                                        if(x1==3) heishi();
                                        if(x1==4) shengji();
                                        if(x1==5) qingkuang();
                                        if(x1==6) xingyunzhuanpan();
                                        if(x1==7) leizhutiaozhansai();
                                        if(x1==8) guanyu();
                                        if(x1==9) maoxian();
                                    }
                                    void wuqiheishi()
                                    {
                                        system("cls");
                                        cout<<"1.小刀 100元 2.木剑 200元 3.铁剑 500元 4.钻石剑 1000元 5.圣剑 5000元"<<endl; 
                                        cout<<"你要买哪个?输入0返回主界面.现有"<<money<<"金币"<<endl;
                                        a[1].qijuname="小刀",a[2].qijuname="木剑",a[3].qijuname="铁剑",a[4].qijuname="钻石剑",a[5].qijuname="圣剑";
                                        int x3;
                                        cin>>x3; 
                                        if(x3==0) zhujiemian();
                                        else cout<<"买几个:"; 
                                        int x4;
                                        cin>>x4;
                                        if(x3==1) 
                                        {
                                            if(money>=100*x4) 
                                            {
                                                cout<<"买过了"<<endl;
                                                money-=100*x4;
                                                gongji+=10*x4;
                                                a[x3].pdgoumai=true;
                                                a[x3].shuliang+=x4;
                                                cout<<"还有"<<money<<"元"<<endl; 
                                                qingkuang();
                                            }
                                            else cout<<"没有足够的钱"<<endl;
                                            Sleep(500);
                                            zhujiemian();
                                        }
                                        if(x3==2) 
                                        {
                                            if(money>=200*x4) 
                                            {
                                                cout<<"买过了"<<endl;
                                                money-=200*x4;
                                                gongji+=23*x4;
                                                a[x3].pdgoumai=true;
                                                a[x3].shuliang+=x4;
                                                cout<<"还有"<<money<<"元"<<endl; 
                                                qingkuang();
                                            }
                                            else cout<<"没有足够的钱"<<endl;
                                            Sleep(500);
                                            zhujiemian();
                                        }
                                        if(x3==3) 
                                        {
                                            if(money>=500*x4) 
                                            {
                                                cout<<"买过了"<<endl;
                                                money-=500*x4;
                                                gongji+=57*x4;
                                                a[x3].pdgoumai=true;
                                                a[x3].shuliang+=x4;
                                                cout<<"还有"<<money<<"元"<<endl; 
                                                qingkuang();
                                            }
                                            else cout<<"没有足够的钱"<<endl;
                                            Sleep(500);
                                            zhujiemian();
                                        }
                                        if(x3==4) 
                                        {
                                            if(money>=1000*x4) 
                                            {
                                                cout<<"买过了"<<endl;
                                                money-=1000*x4;
                                                gongji+=121*x4;
                                    			a[x3].pdgoumai=true;
                                                a[x3].shuliang+=x4;
                                                cout<<"还有"<<money<<"元"<<endl; 
                                                qingkuang();
                                            }
                                            else cout<<"没有足够的钱"<<endl;
                                            Sleep(500);
                                            zhujiemian();
                                        }
                                        if(x3==5) 
                                        {
                                            if(money>=5000) 
                                            {
                                                cout<<"买过了"<<endl;
                                                money-=5000*x4;
                                                gongji+=600*x4;
                                                a[x3].pdgoumai=true;
                                                a[x3].shuliang+=x4;
                                                cout<<"还有"<<money<<"元"<<endl; 
                                                qingkuang();
                                            }
                                            else cout<<"没有足够的钱"<<endl;
                                            Sleep(500);
                                            zhujiemian();
                                        }
                                    }
                                    void zhiliao()
                                    {
                                        if(money>=30) cout<<"将会花费30金币回血,输入1同意,否则返回主界面";
                                        else cout<<"快去搞点钱吧。"; 
                                        int x;
                                        cout<<'\n'; 
                                        cin>>x;
                                        if(x==1) 
                                        {
                                            cout<<"已回满。";
                                            money-=30;
                                            xueliang=zcxueliang;
                                            cout<<endl;
                                            Sleep(500); 
                                            zhujiemian(); 
                                        }
                                        else zhujiemian();
                                    }
                                    void qingkuang()
                                    {
                                        system("cls");
                                        cout<<"等级"<<ji;
                                        cout<<endl<<"血量:"<<xueliang<<"/"<<zcxueliang<<endl; 
                                        cout<<"攻击:"<<gongji<<endl;
                                        cout<<"钱"<<money<<"元"<<endl; 
                                        cout<<"经验"<<jingyan<<endl;
                                        cout<<"还可以复活:"<<kefuhuocishu<<endl;
                                        cout<<(keshui==true?"有":"无")<<"冰雪抗性"<<endl;
                                        cout<<(kehuo==true?"有":"无")<<"火焰抗性"<<endl;
                                        cout<<"减伤:"<<jianshang;
                                        for(int i=1;i<=18;i++)
                                        	if(a[i].pdgoumai==true)
                                        		cout<<'\n'<<"你有"<<a[i].shuliang<<"个"<<a[i].qijuname; 
                                        cout<<'\n';
                                        if(xueliang<zcxueliang) zhiliao();
                                        else
                                        {
                                            system("pause");
                                            zhujiemian();
                                        }
                                    }
                                    void shengji()
                                    {   
                                        system("cls");
                                        cout<<"现有经验:"<<jingyan;
                                        cout<<'\n'<<"需要"<<pow(2,ji)<<"经验升级"<<endl;
                                        cout<<"升级输入1,其他则返回主界面"<<endl;
                                        int x2;
                                        cin>>x2;
                                        if(x2==1)
                                        {
                                            if(jingyan<pow(2,ji)) 
                                            {
                                                cout<<"没有足够经验。"<<endl;
                                                Sleep(50);
                                                zhujiemian();
                                            }
                                            else while(jingyan>=pow(2,ji))
                                            {
                                                system("cls");
                                                jingyan-=pow(2,ji),ji++,zcxueliang+=ji*4,xueliang=zcxueliang,gongji+=ji;    
                                                cout<<"现满血量:"<<zcxueliang<<'\n';
                                                cout<<"现攻击:"<<gongji<<'\n';
                                                cout<<"等级:"<<ji<<'\n';
                                                cout<<"经验还剩:"<<jingyan<<'\n';
                                            } 
                                            Sleep(2000);
                                            zhujiemian();
                                        } 
                                        else zhujiemian();
                                    }
                                    void xingyunzhuanpan()
                                    {
                                        system("cls");
                                        int x;
                                        cout<<"需要100金币,抽奖输入1,其他则返回主界面"<<'\n';
                                        cin>>x;
                                        if(x!=1) zhujiemian();
                                        if(money<100)
                                        {
                                            cout<<"没有足够的钱。"<<'\n';
                                            zhujiemian();
                                        } 
                                        else
                                        {
                                            money-=100; 
                                            cout<<"幸运数字是5,"<<"你的数字是:";
                                            long long s=time(NULL);
                                            s%=9;
                                            Sleep(300);
                                            cout<<s+1<<'\n';
                                            if(s==4) 
                                            {
                                                cout<<"大奖!"<<'\n';
                                                jingyan+=1000;
                                            }
                                            else jingyan+=100;
                                            Sleep(300);
                                            zhujiemian();
                                        }
                                    }
                                    void heishi()
                                    {
                                        int x3;
                                        cout<<"1.武器商店 2.防具商店 3.头盔商店 4.稀有商店 5.经验兑换"<<endl;
                                        cin>>x3;
                                        if(x3==1)
                                        {
                                            system("cls");
                                            wuqiheishi();   
                                        }
                                    	if(x3==2)
                                        {
                                            system("cls");
                                            fangjuheishi(); 
                                        } 
                                        if(x3==3)
                                        {
                                            system("cls");
                                            toukuiheishi();
                                        } 
                                        if(x3==4)
                                        {
                                            system("cls");
                                            xiyouheishi();  
                                        }
                                        if(x3==5)
                                        {
                                            system("cls");
                                            cout<<"请问你要用多少金币来换经验?"<<endl;
                                            cout<<"1金币=3经验 现有"<<money;
                                            cout<<"金币,可以兑换"<<money*3<<"经验"<<endl;
                                            int x4;
                                            cin>>x4; 
                                            if(money<x4)
                                            {
                                                cout<<"没有足够的钱。"<<'\n';
                                                zhujiemian();
                                            }
                                            else
                                            {
                                                money-=x4;
                                                jingyan+=x4*300;
                                                qingkuang();
                                            }
                                        }
                                    }
                                    void fangjuheishi()
                                    {
                                        system("cls");
                                        cout<<"6.木甲 100元 7.铁甲 200元 8.钢甲 500元 9.钻石甲 1000元 10.圣衣 5000元"<<endl; 
                                        cout<<"你要买哪个?输入0返回主界面.现有"<<money<<"金币"<<endl;
                                        a[6].qijuname="木甲",a[7].qijuname="铁甲",a[8].qijuname="钢甲",a[9].qijuname="钻石甲",a[10].qijuname="圣衣";
                                        int x3;
                                        cin>>x3; 
                                        if(x3==0) zhujiemian();
                                        else cout<<"买几个:"; 
                                        int x4;
                                        cin>>x4;
                                        if(x3==6) 
                                        {
                                            if(money>=100*x4) 
                                            {
                                                cout<<"买过了"<<endl;
                                                money-=100*x4;
                                                a[x3].pdgoumai=true;
                                                a[x3].shuliang+=x4;
                                                zcxueliang=xueliang+=10*5*x4;
                                                cout<<"还有"<<money<<"元"<<endl; 
                                                qingkuang();
                                            }
                                            else cout<<"没有足够的钱"<<endl;
                                            Sleep(500);
                                            zhujiemian();
                                        }
                                        if(x3==7) 
                                        {
                                            if(money>=200*x4) 
                                            {
                                                cout<<"买过了"<<endl;
                                                money-=200*x4;
                                                a[x3].pdgoumai=true;
                                                a[x3].shuliang+=x4;
                                                zcxueliang=xueliang+=23*5*x4;
                                                cout<<"还有"<<money<<"元"<<endl; 
                                                qingkuang();
                                            }
                                            else cout<<"没有足够的钱"<<endl;
                                            Sleep(500);
                                            zhujiemian();
                                        }
                                        if(x3==8) 
                                        {
                                            if(money>=500*x4) 
                                            {
                                                cout<<"买过了"<<endl;
                                                money-=500*x4;
                                                a[x3].pdgoumai=true;
                                                a[x3].shuliang+=x4;
                                                zcxueliang=xueliang+=57*5*x4;
                                                cout<<"还有"<<money<<"元"<<endl; 
                                                qingkuang();
                                            }
                                            else cout<<"没有足够的钱"<<endl;
                                            Sleep(500);
                                            zhujiemian();
                                        }
                                        if(x3==9) 
                                        {
                                            if(money>=1000*x4) 
                                            {
                                                cout<<"买过了"<<endl;
                                                money-=1000*x4;
                                                a[x3].pdgoumai=true;
                                                a[x3].shuliang+=x4;
                                                zcxueliang=xueliang+=121*5*x4;
                                                cout<<"还有"<<money<<"元"<<endl; 
                                                qingkuang();
                                            }
                                            else cout<<"没有足够的钱"<<endl;
                                            Sleep(500);
                                            zhujiemian();
                                        }
                                        if(x3==10) 
                                        {
                                            if(money>=5000*x4) 
                                            {
                                                cout<<"买过了"<<endl;
                                                money-=5000*x4;
                                                a[x3].pdgoumai=true;
                                                a[x3].shuliang+=x4;
                                                zcxueliang=xueliang+=600*5*x4;
                                                cout<<"还有"<<money<<"元"<<endl; 
                                                qingkuang();
                                            }
                                            else cout<<"没有足够的钱"<<endl;
                                            Sleep(500);
                                            zhujiemian();
                                        }
                                    }
                                    void xiyouheishi()
                                    {
                                        system("cls");
                                        cout<<"16.复活甲 2000元 17.克火靴 1000元 18.克水靴 1000元"<<endl; 
                                        cout<<"你要买哪个?输入0返回主界面.现有"<<money<<"金币"<<endl;
                                        a[16].qijuname="复活甲",a[17].qijuname="克火靴",a[18].qijuname="克水靴";
                                        int x3;
                                        cin>>x3; 
                                        if(x3==0) zhujiemian();
                                        else if(x3==1) cout<<"买几个:"; 
                                        int x4;
                                        cin>>x4;
                                        if(x3==16) 
                                        {
                                            if(money>=2000*x4) 
                                            {
                                                cout<<"买过了"<<endl;
                                                money-=2000*x4;
                                                kefuhuocishu+=x4;
                                                a[x3].pdgoumai=true;
                                                a[x3].shuliang+=x4;
                                                cout<<"还有"<<money<<"元"<<endl; 
                                                qingkuang();
                                            }
                                            else cout<<"没有足够的钱"<<endl;
                                            Sleep(500);
                                            zhujiemian();
                                        }
                                        if(x3==17) 
                                        {
                                            if(money>=1000) 
                                            {
                                                cout<<"买过了"<<endl;
                                                money-=1000;
                                                kehuo=true;
                                                a[x3].pdgoumai=true;
                                                a[x3].shuliang+=x4;
                                                cout<<"还有"<<money<<"元"<<endl; 
                                                qingkuang();
                                            }
                                            else cout<<"没有足够的钱"<<endl;
                                            Sleep(500);
                                            zhujiemian();
                                        }
                                        if(x3==18) 
                                        {
                                            if(money>=1000) 
                                            {
                                                cout<<"买过了"<<endl;
                                                money-=1000;
                                                keshui=true;
                                                a[x3].pdgoumai=true;
                                                a[x3].shuliang+=x4;
                                                cout<<"还有"<<money<<"元"<<endl; 
                                                qingkuang();
                                            }
                                            else cout<<"没有足够的钱"<<endl;
                                            Sleep(500);
                                            zhujiemian();
                                        }
                                    }
                                    void toukuiheishi()
                                    {
                                        system("cls");
                                        cout<<"11.木盔 100元 12.铁盔 200元 13.钢盔 500元 14.钻石盔 1000元 15.圣盔 5000元"<<endl; 
                                        cout<<"你要买哪个?输入0返回主界面.现有"<<money<<"金币"<<endl;
                                        a[11].qijuname="木盔",a[12].qijuname="铁盔",a[13].qijuname="钢盔",a[14].qijuname="钻石盔",a[15].qijuname="圣盔";
                                        int x3;
                                        cin>>x3; 
                                        if(x3==0) zhujiemian();
                                        else cout<<"买几个:"; 
                                        int x4;
                                        cin>>x4;
                                        if(x3==11) 
                                        {
                                            if(money>=100*x4) 
                                            {
                                                cout<<"买过了"<<endl;
                                                money-=100*x4;
                                                jianshang+=2*x4;
                                                a[x3].shuliang+=x4;
                                                a[x3].pdgoumai=true;
                                                cout<<"还有"<<money<<"元"<<endl; 
                                                qingkuang();
                                            }
                                            else cout<<"没有足够的钱"<<endl;
                                            Sleep(500);
                                            zhujiemian();
                                        }
                                        if(x3==12) 
                                        {
                                            if(money>=200*x4) 
                                            {
                                                cout<<"买过了"<<endl;
                                                money-=200*x4;
                                                jianshang+=7*x4;
                                                a[x3].shuliang+=x4;
                                                a[x3].pdgoumai=true;
                                                cout<<"还有"<<money<<"元"<<endl; 
                                                qingkuang();
                                            }
                                            else cout<<"没有足够的钱"<<endl;
                                            Sleep(500);
                                            zhujiemian();
                                        }
                                        if(x3==13) 
                                        {
                                            if(money>=500*x4) 
                                            {
                                                cout<<"买过了"<<endl;
                                                money-=500*x4;
                                                jianshang+=31*x4;
                                                a[x3].shuliang+=x4;
                                                a[x3].pdgoumai=true;
                                                cout<<"还有"<<money<<"元"<<endl; 
                                                qingkuang();
                                            }
                                            else cout<<"没有足够的钱"<<endl;
                                            Sleep(500);
                                            zhujiemian();
                                        }
                                        if(x3==14) 
                                        {
                                            if(money>=1000*x4) 
                                            {
                                                cout<<"买过了"<<endl;
                                                money-=1000*x4;
                                                jianshang+=66*x4;
                                                a[x3].shuliang+=x4;
                                                a[x3].pdgoumai=true;
                                                cout<<"还有"<<money<<"元"<<endl; 
                                                qingkuang();
                                            }
                                            else cout<<"没有足够的钱"<<endl;
                                            Sleep(500);
                                            zhujiemian();
                                        }
                                        if(x3==15) 
                                        {
                                            if(money>=5000*x4) 
                                            {
                                                cout<<"买过了"<<endl;
                                                money-=5000*x4;
                                                jianshang+=360*x4;
                                                a[x3].shuliang+=x4;
                                                a[x3].pdgoumai=true;
                                                cout<<"还有"<<money<<"元"<<endl; 
                                                qingkuang();
                                            }
                                            else cout<<"没有足够的钱"<<endl;
                                            Sleep(500);
                                            zhujiemian();
                                        }   
                                    }
                                    void tishi()
                                    {
                                        int s=time(NULL)%5;
                                        if(s==0) 
                                        {
                                            cout<<"打怪前注意查看情况.";
                                            Sleep(2000);
                                            zhujiemian();
                                        }
                                        if(s==1) 
                                        {
                                            cout<<"如果血量过低,建议升级或回血.";
                                            Sleep(2000);
                                            zhujiemian();
                                        }
                                        if(s==2) 
                                        {
                                            cout<<"擂主挑战赛不要盲目自信.";
                                            Sleep(2000);
                                            zhujiemian();
                                        }
                                        if(s==3) 
                                        {
                                            cout<<"怪物的血量就是怪物级别乘5.";
                                            Sleep(2000);
                                            zhujiemian();
                                        }
                                        if(s==4) 
                                        {
                                            cout<<"怪物的攻击就是怪物级别.";
                                            Sleep(2000);
                                            zhujiemian();
                                        }
                                    }
                                    void leizhutiaozhansai()
                                    {
                                        cout<<"你要挑战哪个级别?"<<endl;
                                        cout<<"1.  5级   2.  10级   3.  50级   4.  100级   5.  500级   6.返回主界面"<<endl;
                                        int x1;
                                        cin>>x1;
                                        if(x1==1) daguai(5,true,false);
                                        if(x1==2) daguai(10,true,false);
                                        if(x1==3) daguai(50,true,false);
                                        if(x1==4) daguai(100,true,false);
                                        if(x1==5) daguai(500,true,false);
                                        if(x1==6) zhujiemian();
                                    }
                                    void guanyu()
                                    {
                                        cout<<"这个游戏为黑曼巴原创出品,侵权必究!!!"<<endl;
                                        cout<<"v.1.0.0 创作了这个游戏。"<<endl; 
                                        cout<<"v.1.0.1 更新了幸运转盘。"<<endl;
                                        cout<<"v.1.0.2 更新了经验兑换。"<<endl;
                                        cout<<"v.1.0.3 更新了名字功能。"<<endl;
                                        cout<<"v.1.0.4 更新了头盔黑市。"<<endl;
                                        cout<<"v.1.0.5 更新了稀有黑市。"<<endl;
                                        cout<<"v.1.0.6 修复了减伤后血量高于满的BUG。"<<endl;
                                        cout<<"v.1.0.7 修复了没有返回已经买的物品的BUG。"<<endl;
                                        cout<<"输入'圣战斗士'可以1级吊打2级!!!"<<endl;
                                        system("pause");
                                        zhujiemian(); 
                                    }
                                    void maoxian()
                                    {
                                    	cout<<"冒险过程中输入0返回主界面。"<<'\n'; 
                                    	for(;;)
                                    	{
                                    		int x;
                                    		int ls1=time(NULL)%4;
                                    		if(ls1==0)
                                    		{
                                    			cout<<"有一块巨石从天上砸了下来,请问你要怎么做?"<<'\n';
                                    			cout<<"1.用手护住头   2.躲入一旁的洞中  0.返回主界面"<<'\n';
                                    			cin>>x;
                                    			if(x==0) zhujiemian();
                                    			int ls2=time(NULL)*1.0/10;
                                    			ls2*=10;
                                    			ls2%=10;
                                    			if(ls2==1) 
                                    			{
                                    				if(x==1) 
                                    				{
                                    					cout<<"就在最后一刻,你找到了一副手套,安然无恙的活了下来。"<<'\n';
                                    					cout<<"血量+100,攻击+30!"<<'\n';
                                    					((xueliang+100)>zcxueliang)?xueliang=zcxueliang:xueliang+=100;
                                    					gongji+=30;
                                    					continue;
                                    				}
                                    				if(x==2) 
                                    				{
                                    					cout<<"洞上的土太软了......"<<'\n';
                                    					cout<<"血量-50!"<<'\n';
                                    					xueliang-=50;
                                    					if(xueliang<=0) 
                                    					{
                                    						cout<<"你死了。";
                                    						exit(0); 
                                    				    } 
                                    					continue;
                                    				}
                                    			}
                                    			if(ls2==0) 
                                    			{
                                    				if(x==1) 
                                    				{
                                    					cout<<"手废掉了......"<<'\n';
                                    					cout<<"血量-50!"<<'\n';
                                    					xueliang-=50;
                                    					if(xueliang<=0) 
                                    					{
                                    						cout<<"你死了。";
                                    						exit(0); 
                                    				    }
                                    					continue;
                                    				}
                                    				if(x==2) 
                                    				{
                                    					cout<<"躲过一劫!"<<'\n';
                                    					cout<<"发现一颗回血丹,恢复满血!"<<'\n';
                                    					xueliang=zcxueliang;
                                    					continue;
                                    				}
                                    			}	
                                    		}
                                    		if(ls1==1)
                                    		{
                                    			cout<<"发现了一株很奇怪的草。"<<'\n';
                                    			cout<<"1.吃掉它   2.丢弃它  0.返回主界面"<<'\n';
                                    			cin>>x;
                                    			if(x==0) zhujiemian();
                                    			int ls2=time(NULL)*1.0/10;
                                    			ls2*=10;
                                    			ls2%=10;
                                    			if(ls2==1) 
                                    			{
                                    				if(x==1) 
                                    				{
                                    					cout<<"奇效!!!"<<'\n';
                                    					cout<<"血量+150,攻击+50!"<<'\n';
                                    					((xueliang+150)>zcxueliang)?xueliang=zcxueliang:xueliang+=150;
                                    					gongji+=50;
                                    					continue;
                                    				}
                                    				if(x==2) 
                                    				{
                                    					cout<<"它大放灵光,把你封印了......"<<'\n';
                                    					cout<<"血量减半,攻击减半,减伤减半!"<<'\n';
                                    					zcxueliang=xueliang=zcxueliang/2,gongji/=2,jianshang/=2;
                                    					continue;
                                    				}
                                    			}
                                    			if(ls2==0) 
                                    			{
                                    				if(x==1) 
                                    				{
                                    					cout<<"这有毒......"<<'\n';
                                    					cout<<"血量-75,攻击-20!"<<'\n';
                                    					xueliang-=75;
                                    					if(xueliang<=0) 
                                    					{
                                    						cout<<"你死了。";
                                    						exit(0); 
                                    				    }
                                    					gongji-=20;
                                    					continue;
                                    				}
                                    				if(x==2) 
                                    				{
                                    					cout<<"这有毒!躲过一劫!"<<'\n';
                                    					cout<<"又发现了一株,血量+100,攻击+30!"<<'\n';
                                    					((xueliang+100)>zcxueliang)?xueliang=zcxueliang:xueliang+=100;
                                    					gongji+=30;
                                    					continue;
                                    				}
                                    			}	
                                    		}
                                    		if(ls1==2)
                                    		{
                                    			cout<<"发现了一个人被另外几个人打了。"<<'\n';
                                    			cout<<"1.帮他   2.不管他  0.返回主界面"<<'\n';
                                    			cin>>x;
                                    			if(x==0) zhujiemian();
                                    			int ls2=time(NULL)*1.0/10;
                                    			ls2*=10;
                                    			ls2%=10;
                                    			if(ls2==1) 
                                    			{
                                    				if(x==1) 
                                    				{
                                    					cout<<"他给了你一颗丹药!"<<'\n';
                                    					cout<<"血量+150,攻击+50!"<<'\n';
                                    					((xueliang+150)>zcxueliang)?xueliang=zcxueliang:xueliang+=150;
                                    					gongji+=50;
                                    					continue;
                                    				}
                                    				if(x==2) 
                                    				{
                                    					cout<<"他说不关你事......"<<'\n';
                                    					cout<<"心理伤害:血量-75!"<<'\n';
                                    					xueliang-=75;
                                    					if(xueliang<=0) 
                                    					{
                                    						cout<<"你死了。";
                                    						exit(0); 
                                    				    }
                                    					continue;
                                    				}
                                    			}
                                    			if(ls2==0) 
                                    			{
                                    				if(x==1) 
                                    				{
                                    					cout<<"打不过,负伤逃跑了......"<<'\n';
                                    					cout<<"血量-100!"<<'\n';
                                    					xueliang-=100;
                                    					if(xueliang<=0) 
                                    					{
                                    						cout<<"跑到半路,你因失血过多而死。";
                                    						exit(0); 
                                    				    }
                                    					continue;
                                    				}
                                    				if(x==2) 
                                    				{
                                    					cout<<"他感谢道,谢谢好心人帮助!"<<'\n';
                                    					cout<<"心理作用:血量+100,攻击+30!"<<'\n';
                                    					((xueliang+100)>zcxueliang)?xueliang=zcxueliang:xueliang+=100;
                                    					gongji+=30;
                                    					continue;
                                    				}
                                    			}	
                                    		}
                                    	}
                                    }
                                  • 有同感的发个+1