头像

龚子昂

$1.刷完基础课√\\2.天梯前5页\\3.刷完提高课\\AcWing小学$




离线:1小时前


最近来访(810)
用户头像
limie
用户头像
丿丶纯少
用户头像
wjf
用户头像
Aleksee
用户头像
zzys
用户头像
xxxuan
用户头像
akai
用户头像
IER
用户头像
LAG-银河组织号
用户头像
吴子涵
用户头像
鳕鱼饭
用户头像
sjzcacm
用户头像
coder2050
用户头像
WBSLZF
用户头像
summerrr
用户头像
肖肖_123
用户头像
椒盐土豆
用户头像
偷偷学丨专注丶猪猪
用户头像
BT7274
用户头像
-咕咕咕-


如果要转载,请注明出处

最近作者期末考试,1.18后回归,我的程序一定会更加美好,祝大家考试顺利!

合成更新,后续会加入更多配方

冶炼厂(用熔炉把矿石变成矿,预计在1.1.1版本中出)

农场部分(正在编写,预计在1.1.2版本中出)

大家有任何建议,在评论区见~~~(第二天或者今天回复)

#include <iostream>
#include <cstring>
#include <algorithm>
#include<unistd.h>
#include<bits/stdc++.h>
using namespace std;
 #include <windows.h>
#define cls system("cls") 
void x();
void xx();
void linchang();
void kuangdong();
void baoxiang();
void beibao();
void hecheng();
void vip();
void hall();
void shangchang();
void bgf();
void nongchang();
void dacaochang();
void xinxi();
void yelianchang();
//void ();
bool has_gzt,has_bx;
int vip_money=2e9,money=100;
/*
1.原木
2.木板 
3.工作台
4.木棍
5.木剑
6.木稿
7.木锄
8.木斧
9.苹果
10.小麦
11.小麦种子
12.铁矿
13.石头
14.煤
15.火把
16.金矿 
17.钻石
18.钻石矿 
*/
string names[10000]={"","原木","木板","工作台","木棍","木剑","木稿","木锄","木斧","苹果","小麦","小麦种子","铁矿","石头","煤","火把","金矿","钻石","钻石矿"};
int number[10000];
void bgf()
{
    cout<<"暂时不开放";
    sleep(1);
    hall();
}  
int rand(int l,int r)
{
    return rand()%(r-l+1)+l;
}
void x(string n)
{
    for(int i=0;i<n.size();i++)
    {
        cout<<n[i];
        usleep(3000);
    }
    cout<<endl;
}
void xx(string n)
{
    for(int i=0;i<n.size();i++)
    {
        cout<<n[i];
        usleep(3000);
    }
}
void linchang()
{
    cls;
    x("1.砍树");
    x("2.回主界面");
    int x1;
    cin>>x1;
    if(x1==2)
    {
        hall();
        return;
    }
    while(1)
    {
        cls;
        x("0.回主界面"); 
        x("请问您要砍几棵树"); 
        int xx;
        cin>>xx;
        if(xx==0)
        {
            hall();
            break;
        }
        x("砍树中……"); 
        int res1=0;
        int res2=0;
        for(int i=1;i<=xx;i++)
        {
            sleep(1),res1++;
            if(rand(1,4)==3) res2++;
        }
        number[1]+=res1;
        number[9]+=res2; 
        cout<<"你获得了"<<res1<<"个原木"<<endl<<res2<<"个苹果"<<endl<<"-------------"<<endl<<"两秒后退出";
        sleep(2); 
    }
    hall();
}
void kuangdong()
{
    cls;
    x("欢迎来到大陆的唯一一个矿洞,这里有许许多多的矿,都有一定的概率挖到,具体概率见主界面的信息板块"); 
    x("您要挖几个随机矿石?");
    int xx;
    cin>>xx;
    cout<<"挖矿中......"; 
    int res1=0,res2=0,res3=0,res4=0,res5=0;
    for(int i=1;i<=xx;i++)
    {
        Sleep(5);
        int tt=rand()%36+1;
        if(tt<=18) res1++;
        else if(tt<=30) res2++;
        else if(tt<=32) res3++;
        else if(tt<=35) res4++;
        else res5++;
    } 
    cout<<"你获得了\n"<<res1<<"个石头\n"<<res2<<"个煤\n"<<res3<<"个金矿\n"<<res4<<"个铁矿\n"<<res5<<"个钻石";
    number[13]+=res1;
    number[14]+=res2;
    number[16]+=res3;
    number[12]+=res4;
    number[18]+=res5;
    sleep(2);
    hall(); 
}
/*
x("矿洞:\n挖一个需要5秒,石头1/2,煤1/3,金矿1/18,铁矿3/36,钻石1/36"); 
1.原木
2.木板
3.工作台
4.木棍
5.木剑
6.木稿
7.木锄
8.木斧
9.苹果
10.小麦
11.小麦种子
12.铁矿
13.石头
14.煤
15.火把
16.金矿 
17.钻石
18.钻石矿 
*/
void baoxiang()
{
    cls;
    if(has_bx) x("你已经拿过宝箱了!");
    else
    {
        int a=rand(1,5);
        money+=a*50; 
        xx("你获得了"),cout<<a*50,xx("元"); 
        has_bx=1;
    } 
    sleep(2);
    hall();
}
void beibao()
{
    cls;
    xx("您有钱");
    cout<<money; 
    x("元"); 
    for(int i=1;i<10000;i++)
        if(number[i]!=0)
            cout<<names[i]<<" "<<number[i]<<endl;
    sleep(2);
    hall();
}
void hecheng()
{
    cls;
    x("请输入编号|_|(空格)数量"); 
    if(number[1]>0) cout<<"1.原木1个->木板4个\n";
    if(number[2]>=2) cout<<"2.木板2个->木棍4个\n";
    if(number[2]>=4) cout<<"3.木板4个->一个工作台\n"; 
    if(number[2]>=2&&number[4]>0&&has_gzt) cout<<"4.木板2个+木棍1个->木剑1个\n";
    if(number[2]>=3&&number[4]>=2&&has_gzt) cout<<"5.木板3个+木棍2个->木稿1个\n";
    if(number[2]>=3&&number[4]>=2&&has_gzt) cout<<"6.木板3个+木棍2个->木斧1个\n";
    if(number[2]>=2&&number[4]>=2&&has_gzt) cout<<"7.木板2个+木棍2个->木锄1个\n";
    int x,y;
    cin>>x;
    if(x==1) number[1]--,number[2]+=4;
    if(x==2) number[2]-=2,number[4]+=4;
    if(x==3) number[2]-=4,number[3]++,has_gzt=1;
    if(x==4) number[2]-=2,number[4]-=1,number[5]++;
    if(x==5) number[2]-=3,number[4]-=2,number[6]++;
    if(x==6) number[2]-=2,number[4]-=2,number[8]++;
    if(x==7) number[2]-=2,number[4]-=2,number[7]++;
    cout<<"兑换成功!";
    sleep(1);
    hall();
}
/*
x("矿洞:\n挖一个需要5秒,石头1/2,煤1/3,金矿1/18,铁矿3/36,钻石1/36"); 
1.原木
2.木板
3.工作台
4.木棍
5.木剑
6.木稿
7.木锄
8.木斧
9.苹果
10.小麦
11.小麦种子
12.铁矿
13.石头
14.煤
15.火把
16.金矿 
17.钻石
18.钻石矿 
*/
void vip()
{
    cls;
    x("请输入密码");
    string ss;
    cin>>ss;
    if(ss[0]=='g'&&ss[1]=='z'&&ss[2]=='a'&&ss[3]=='1'&&ss[4]=='2'&&ss[5]=='3'&&ss[6]=='4'&&ss[7]=='5'&&ss[8]=='6')
    {
        money=vip_money;
        hall();
    }
    else
    {
        hall();
    }
}
void hall()
{
    cls;
    x("1.林场");
    x("2.矿洞");
    x("3.商场");
    x("4.打草场");
    x("5.冶炼场");
    x("6.农场");
    x("7.宝箱");
    x("8.背包");
    x("9.合成"); 
    x("10.VIP密码输入"); 
    x("11.关于本游戏的信息"); 
    x("请输入编号");
    int x;
    cin>>x;
    if(x==1) linchang();
    else if(x==2) kuangdong(); 
    else if(x==3) shangchang();
    else if(x==4) dacaochang();
    else if(x==5) yelianchang(); 
    else if(x==6) nongchang();
    else if(x==7) baoxiang();
    else if(x==8) beibao();
    else if(x==9) hecheng();
    else if(x==10) vip(); 
    else if(x==11) xinxi();
    else cout<<"错误编号!",sleep(1),hall();
}
void shangchang()
{
    cls;
    x("你要买(1)还是卖(2)?");
    int t;
    cin>>t;
    if(t==1)
    {
        x("本商店只卖原料,自己去合成");
        x("1.原木 15元一个");
        x("2.木棍 12元一个");
        int tt;
        cin>>tt;
        if(tt==1) 
        {
            if(money>=15) money-=15,number[1]++;
            else cout<<"你不能买!"; 
        }
        else if(tt==2)
        {
            if(money>=12) money-=12,number[4]++;
            else cout<<"你不能买!";
        }
    }
    else
    {
        x("1.原木 14元一个");
        x("2.木棍 11元一个");
        int tt;
        cin>>tt;
        if(tt==1)
        {
            if(number[1]==0) cout<<"你不能卖!";
            else money+=14,number[1]--; 
        }
        else if(tt==2)
        {
            if(number[1]==0) cout<<"你不能卖!";
            else money+=14,number[4]--; 
        }
    }
    hall(); 
}
void nongchang()
{
    cls;
    bgf(); 
}
void dacaochang()
{
    cls;
    x("欢迎来到打草场,这里有许许多多的草,打草有一定的概率掉落小麦种子,可以在农场中种植");
    sleep(2);
    cls;
    x("你要打几棵草?");
    int xt,s=0;
    cin>>xt;
    cls; 
    for(int i=1;i<=xt;i++)
    {
        cls;
        xx("打草中,还剩") ;
        cout<<xt-i+1;
        x("秒"); 
        if(rand()%3==0) s++;
        sleep(1);
    } 
    cls;
    xx("你打到了");
    cout<<s;
    xx("个小麦种子");
    number[11]+=s;
    sleep(1); 
    hall();
} 
void xinxi()
{
    x("打草掉落小麦种子概率:1/3");
    x("挖木头掉落苹果概率:1/4,挖一个木头1秒");
    x("矿洞:\n挖一个需要5秒,石头1/2,煤矿1/3,金矿1/18,铁矿3/36,钻石1/36");
    x("现在还有合成部分(下一个版本会出),农场(下一个版本会出)未编写"); 
    x("本游戏版本为alpha1.0.6,后续更新版本需等待");
    sleep(2); 
    hall();
}
void yelianchang()
{
    cls;
    bgf();
}
int main(){
    srand(time(NULL));
    cls;
    hall(); 
} 



因为作者快放假了,所以找人了!
洛谷团队
acwing账号(可以加AC chat)
代码会挂在洛谷团队上




如果要转载,请注明出处

矿洞更新,后续会加入一层一层的机制,每一层都有一定量的矿,每下一层消耗一个火把

冶炼厂开坑(用熔炉把矿石变成矿,预计在1.0.6版本中出)

合成部分(正在编写,预计在1.1.1版本中出)

合成部分是关键,有了合成,游戏就动起来了可能以后需要两天鸽鸽,请见谅

农场部分(正在编写,预计在1.1.2版本中出)

大家有任何建议,在评论区见~~~(第二天或者今天回复)

#include <iostream>
#include <cstring>
#include <algorithm>
#include<unistd.h>
#include<bits/stdc++.h>
using namespace std;
 #include <windows.h>
#define cls system("cls") 
void x();
void xx();
void linchang();
void kuangdong();
void baoxiang();
void beibao();
void hecheng();
void vip();
void hall();
void shangchang();
void bgf();
void nongchang();
void dacaochang();
void xinxi();
void yelianchang();
//void ();
bool has_gzt,has_bx;
int vip_money=2e9,money=100;
/*
1.原木
2.木板 
3.工作台
4.木棍
5.木剑
6.木稿
7.木锄
8.木斧
9.苹果
10.小麦
11.小麦种子
12.铁矿
13.石头
14.煤
15.火把
16.金矿 
17.钻石
18.钻石矿 
*/
string names[10000]={"","原木","木板","工作台","木棍","木剑","木稿","木锄","木斧","苹果","小麦","小麦种子","铁矿","石头","煤","火把","金矿","钻石","钻石矿"};
int number[10000];
void bgf()
{
    cout<<"暂时不开放";
    sleep(1);
    hall();
}  
int rand(int l,int r)
{
    return rand()%(r-l+1)+l;
}
void x(string n)
{
    for(int i=0;i<n.size();i++)
    {
        cout<<n[i];
        usleep(3000);
    }
    cout<<endl;
}
void xx(string n)
{
    for(int i=0;i<n.size();i++)
    {
        cout<<n[i];
        usleep(3000);
    }
}
void linchang()
{
    cls;
    x("1.砍树");
    x("2.回主界面");
    int x1;
    cin>>x1;
    if(x1==2)
    {
        hall();
        return;
    }
    while(1)
    {
        cls;
        x("0.回主界面"); 
        x("请问您要砍几棵树"); 
        int xx;
        cin>>xx;
        if(xx==0)
        {
            hall();
            break;
        }
        x("砍树中……"); 
        int res1=0;
        int res2=0;
        for(int i=1;i<=xx;i++)
        {
            sleep(1),res1++;
            if(rand(1,4)==3) res2++;
        }
        number[1]+=res1;
        number[9]+=res2; 
        cout<<"你获得了"<<res1<<"个原木"<<endl<<res2<<"个苹果"<<endl<<"-------------"<<endl<<"两秒后退出";
        sleep(2); 
    }
    hall();
}
void kuangdong()
{
    cls;
    x("欢迎来到大陆的唯一一个矿洞,这里有许许多多的矿,都有一定的概率挖到,具体概率见主界面的信息板块"); 
    x("您要挖几个随机矿石?");
    int xx;
    cin>>xx;
    cout<<"挖矿中......"; 
    int res1=0,res2=0,res3=0,res4=0,res5=0;
    for(int i=1;i<=xx;i++)
    {
        Sleep(5);
        int tt=rand()%36+1;
        if(tt<=18) res1++;
        else if(tt<=30) res2++;
        else if(tt<=32) res3++;
        else if(tt<=35) res4++;
        else res5++;
    } 
    cout<<"你获得了\n"<<res1<<"个石头\n"<<res2<<"个煤\n"<<res3<<"个金矿\n"<<res4<<"个铁矿\n"<<res5<<"个钻石";
    number[13]+=res1;
    number[14]+=res2;
    number[16]+=res3;
    number[12]+=res4;
    number[18]+=res5;
    sleep(2);
    hall(); 
}
/*
x("矿洞:\n挖一个需要5秒,石头1/2,煤1/3,金矿1/18,铁矿3/36,钻石1/36"); 
1.原木
2.木板
3.工作台
4.木棍
5.木剑
6.木稿
7.木锄
8.木斧
9.苹果
10.小麦
11.小麦种子
12.铁矿
13.石头
14.煤
15.火把
16.金矿 
17.钻石
18.钻石矿 
*/
void baoxiang()
{
    cls;
    if(has_bx) x("你已经拿过宝箱了!");
    else
    {
        int a=rand(1,5);
        money+=a*50; 
        xx("你获得了"),cout<<a*50,xx("元"); 
        has_bx=1;
    } 
    sleep(2);
    hall();
}
void beibao()
{
    cls;
    xx("您有钱");
    cout<<money; 
    x("元"); 
    for(int i=1;i<10000;i++)
        if(number[i]!=0)
            cout<<names[i]<<" "<<number[i]<<endl;
    sleep(2);
    hall();
}
void hecheng()
{
    cls;
//  if(number[])
    bgf();
}
void vip()
{
    cls;
    x("请输入密码");
    string ss;
    cin>>ss;
    if(ss[0]=='g'&&ss[1]=='z'&&ss[2]=='a'&&ss[3]=='1'&&ss[4]=='2'&&ss[5]=='3'&&ss[6]=='4'&&ss[7]=='5'&&ss[8]=='6')
    {
        money=vip_money;
        hall();
    }
    else
    {
        hall();
    }
}
void hall()
{
    cls;
    x("1.林场");
    x("2.矿洞");
    x("3.商场");
    x("4.打草场");
    x("5.冶炼场");
    x("6.农场");
    x("7.宝箱");
    x("8.背包");
    x("9.合成"); 
    x("10.VIP密码输入"); 
    x("11.关于本游戏的信息"); 
    x("请输入编号");
    int x;
    cin>>x;
    if(x==1) linchang();
    else if(x==2) kuangdong(); 
    else if(x==3) shangchang();
    else if(x==4) dacaochang();
    else if(x==5) yelianchang(); 
    else if(x==6) nongchang();
    else if(x==7) baoxiang();
    else if(x==8) beibao();
    else if(x==9) hecheng();
    else if(x==10) vip(); 
    else if(x==11) xinxi();
}
void shangchang()
{
    cls;
    x("你要买(1)还是卖(2)?");
    int t;
    cin>>t;
    if(t==1)
    {
        x("本商店只卖原料,自己去合成");
        x("1.原木 15元一个");
        x("2.木棍 12元一个");
        int tt;
        cin>>tt;
        if(tt==1) 
        {
            if(money>=15) money-=15,number[1]++;
            else cout<<"你不能买!"; 
        }
        else if(tt==2)
        {
            if(money>=12) money-=12,number[4]++;
            else cout<<"你不能买!";
        }
    }
    else
    {
        x("1.原木 14元一个");
        x("2.木棍 11元一个");
        int tt;
        cin>>tt;
        if(tt==1)
        {
            if(number[1]==0) cout<<"你不能卖!";
            else money+=14,number[1]--; 
        }
        else if(tt==2)
        {
            if(number[1]==0) cout<<"你不能卖!";
            else money+=14,number[4]--; 
        }
    }
    hall(); 
}
void nongchang()
{
    cls;
    bgf(); 
}
void dacaochang()
{
    cls;
    x("欢迎来到打草场,这里有许许多多的草,打草有一定的概率掉落小麦种子,可以在农场中种植");
    sleep(2);
    cls;
    x("你要打几棵草?");
    int xt,s=0;
    cin>>xt;
    cls; 
    for(int i=1;i<=xt;i++)
    {
        cls;
        xx("打草中,还剩") ;
        cout<<xt-i+1;
        x("秒"); 
        if(rand()%3==0) s++;
        sleep(1);
    } 
    cls;
    xx("你打到了");
    cout<<s;
    xx("个小麦种子");
    number[11]+=s;
    sleep(1); 
    hall();
} 
void xinxi()
{
    x("打草掉落小麦种子概率:1/3");
    x("挖木头掉落苹果概率:1/4,挖一个木头1秒");
    x("矿洞:\n挖一个需要5秒,石头1/2,煤矿1/3,金矿1/18,铁矿3/36,钻石1/36");
    x("现在还有合成部分(下一个版本会出),农场(下一个版本会出)未编写"); 
    x("本游戏版本为alpha1.0.5,后续更新版本需等待");
    sleep(2); 
    hall();
}
void yelianchang()
{
    cls;
    bgf();
}
int main(){
    srand(time(NULL));
    cls;
    hall(); 
} 



(1):右下角极域电子教室图标右键,设置,输出密码:mythware_super_password
然后把频道id改掉,就好了
(2):
win+R
cmd
输入taskkill /im StudentMain.exe /f




大家有建议赶紧到评论区留言,或者私信我

宝箱更新

矿洞开坑(大概两天后出来)

农场开始填坑(也是两天后)

合成部分正在准备编写

各种特性(如用工具挖比用手挖快,当然工具也有耐久度与速度差异)

#include <iostream>
#include <cstring>
#include <algorithm>
#include<unistd.h>
#include<bits/stdc++.h>
using namespace std;
 #include <windows.h>
#define cls system("cls") 
void x();
void xx();
void linchang();
void kuangdong();
void baoxiang();
void beibao();
void hecheng();
void vip();
void hall();
void shangchang();
void bgf();
void nongchang();
void dacaochang();
void xinxi();
//void ();
bool has_gzt,has_bx;
int vip_money=2e9,money=100;
/*
1.原木
2.木板
3.工作台
4.木棍
5.木剑
6.木稿
7.木锄
8.木斧
9.苹果 
10.小麦 
*/
string names[10000]={"","原木","木板","工作台","木棍","木剑","木稿","木锄","木斧","苹果","小麦","小麦种子","铁矿","石头","煤","火把","钻石"};
int number[10000];
void bgf()
{
    cout<<"暂时不开放";
    sleep(1);
    hall();
}  
int rand(int l,int r)
{
    return rand()%(r-l+1)+l;
}
void x(string n)
{
    for(int i=0;i<n.size();i++)
    {
        cout<<n[i];
        usleep(3000);
    }
    cout<<endl;
}
void xx(string n)
{
    for(int i=0;i<n.size();i++)
    {
        cout<<n[i];
        usleep(3000);
    }
}
void linchang()
{
    cls;
    x("1.砍树");
    x("2.回主界面");
    int x1;
    cin>>x1;
    if(x1==2)
    {
        hall();
        return;
    }
    while(1)
    {
        cls;
        x("0.回主界面"); 
        x("请问您要砍几棵树"); 
        int xx;
        cin>>xx;
        if(xx==0)
        {
            hall();
            break;
        }
        x("砍树中……"); 
        int res1=0;
        int res2=0;
        for(int i=1;i<=xx;i++)
        {
            Sleep(100),res1++;
            if(rand(1,4)==3) res2++;
        }
        number[1]+=res1;
        number[9]+=res2; 
        cout<<"你获得了"<<res1<<"个原木"<<endl<<res2<<"个苹果"<<endl<<"-------------"<<endl<<"两秒后退出";
        sleep(2); 
    }
    hall();
}
void kuangdong()
{
    cls;
    x("欢迎来到大陆的唯一一个矿洞,这里有许许多多的矿,都有一定的概率挖到,具体概率见主界面的信息板块"); 
    x("还没编写完毕…………………………………………………………………………………………");
    sleep(1);
    hall(); 
}
void baoxiang()
{
    cls;
    if(has_bx) x("你已经拿过宝箱了!");
    else
    {
        int a=rand(1,5);
        money+=a*50; 
        xx("你获得了"),cout<<a*50,xx("元"); 
        has_bx=1;
    } 
    sleep(2);
    hall();
}
void beibao()
{
    cls;
    xx("您有钱");
    cout<<money; 
    x("元"); 
    for(int i=1;i<10000;i++)
        if(number[i]!=0)
            cout<<names[i]<<" "<<number[i]<<endl;
    sleep(2);
    hall();
}
void hecheng()
{
    cls;
//  if(number[]
}
void vip()
{
    cls;
    x("请输入密码");
    string ss;
    cin>>ss;
    if(ss[0]=='g'&&ss[1]=='z'&&ss[2]=='a'&&ss[3]=='1'&&ss[4]=='2'&&ss[5]=='3'&&ss[6]=='4'&&ss[7]=='5'&&ss[8]=='6')
    {
        money=vip_money;
        hall();
    }
    else
    {
        hall();
    }
}
void hall()
{
    cls;
    x("1.林场");
    x("2.矿洞");
    x("3.商场");
    x("4.打草场");
    x("5.农场");
    x("6.宝箱");
    x("7.背包");
    x("8.合成"); 
    x("9.VIP密码输入"); 
    x("10:关于本游戏的信息"); 
    x("请输入编号");
    int x;
    cin>>x;
    if(x==1) linchang();
    else if(x==2) kuangdong(); 
    else if(x==3) shangchang();
    else if(x==4) dacaochang();
    else if(x==5) nongchang();
    else if(x==6) baoxiang();
    else if(x==7) beibao();
    else if(x==8) hecheng();
    else if(x==9) vip(); 
    else if(x==10) xinxi();
}
void shangchang()
{
    cls;
    x("你要买(1)还是卖(2)?");
    int t;
    cin>>t;
    if(t==1)
    {
        x("本商店只卖原料,自己去合成");
        x("1.原木 15元一个");
        x("2.木棍 12元一个");
        int tt;
        cin>>tt;
        if(tt==1) 
        {
            if(money>=15) money-=15,number[1]++;
            else cout<<"你不能买!"; 
        }
        else if(tt==2)
        {
            if(money>=12) money-=12,number[4]++;
            else cout<<"你不能买!";
        }
    }
    else
    {
        x("1.原木 14元一个");
        x("2.木棍 11元一个");
        int tt;
        cin>>tt;
        if(tt==1)
        {
            if(number[1]==0) cout<<"你不能卖!";
            else money+=14,number[1]--; 
        }
        else if(tt==2)
        {
            if(number[1]==0) cout<<"你不能卖!";
            else money+=14,number[4]--; 
        }
    }
    hall(); 
}
void nongchang()
{
    cls;
    bgf(); 
}
void dacaochang()
{
    cls;
    x("欢迎来到打草场,这里有许许多多的草,打草有一定的概率掉落小麦种子,可以在农场中种植");
    sleep(2);
    cls;
    x("你要打几棵草?");
    int xt,s=0;
    cin>>xt;
    cls; 
    for(int i=1;i<=xt;i++)
    {
        cls;
        xx("打草中,还剩") ;
        cout<<xt-i+1;
        x("秒"); 
        if(rand()%3==0) s++;
        sleep(1);
    } 
    cls;
    xx("你打到了");
    cout<<s;
    xx("个小麦种子");
    number[11]+=s;
    sleep(1); 
    hall();
} 
void xinxi()
{
    x("打草掉落小麦种子概率:1/3");
    x("挖木头掉落苹果概率:1/4");
    x("现在还有合成部分(下一个版本会出),农场(下一个版本会出)未编写,矿洞(还没写完…………)"); 
    x("本游戏版本为alpha1.0.4,后续更新版本需等待");
    sleep(2); 
    hall();
}
/*
1.原木
2.木板
3.工作台
4.木棍
5.木剑
6.木稿
7.木锄
8.木斧
9.苹果 
*/
int main(){
    srand(time(NULL));
    cls;
    hall(); 
} 



添加更多人性化设置

加入游戏相关信息

其实就是水个帖子

欢迎转载,请注明出处

#include <iostream>
#include <cstring>
#include <algorithm>
#include<unistd.h>
#include<bits/stdc++.h>
using namespace std;
 #include <windows.h>
#define cls system("cls") 
void x();
void xx();
void linchang();
void kuangdong();
void baoxiang();
void beibao();
void hecheng();
void vip();
void hall();
void shangchang();
void bgf();
void nongchang();
void dacaochang();
void xinxi();
//void ();
bool has_gzt;
int vip_money=2e9,money=100;
/*
1.1
2.木板
3.工作台
4.4
5.木剑
6.木稿
7.木锄
8.木斧
9.苹果 
10.小麦 
*/
string names[10000]={"","原木","木板","工作台","木棍","木剑","木稿","木锄","木斧","苹果","小麦","小麦种子","铁矿","石头","煤","火把","钻石"};
int number[10000];
void bgf()
{
    cout<<"暂时不开放";
    sleep(1);
    hall();
}  
int rand(int l,int r)
{
    return rand()%(r-l+1)+l;
}
void x(string n)
{
    for(int i=0;i<n.size();i++)
    {
        cout<<n[i];
        usleep(3000);
    }
    cout<<endl;
}
void xx(string n)
{
    for(int i=0;i<n.size();i++)
    {
        cout<<n[i];
        usleep(3000);
    }
}
void linchang()
{
    cls;
    x("1.砍树");
    x("2.回主界面");
    int x1;
    cin>>x1;
    if(x1==2)
    {
        hall();
        return;
    }
    while(1)
    {
        cls;
        x("0.回主界面"); 
        x("请问您要砍几棵树"); 
        int xx;
        cin>>xx;
        if(xx==0)
        {
            hall();
            break;
        }
        x("砍树中……"); 
        int res1=0;
        int res2=0;
        for(int i=1;i<=xx;i++)
        {
            Sleep(100),res1++;
            if(rand(1,4)==3) res2++;
        }
        number[1]+=res1;
        number[9]+=res2; 
        cout<<"你获得了"<<res1<<"个原木"<<endl<<res2<<"个苹果"<<endl<<"-------------"<<endl<<"两秒后退出";
        sleep(2); 
    }
    hall();
}
void kuangdong()
{
    cls;
    x("欢迎来到大陆的唯一一个矿洞,这里有许许多多的矿,都有一定的概率挖到,具体概率见主界面的信息板块"); 
}
void baoxiang()
{
    cls;
    bgf();
}
void beibao()
{
    cls;
    xx("您有钱");
    cout<<money; 
    x("元"); 
    for(int i=1;i<10000;i++)
        if(number[i]!=0)
            cout<<names[i]<<" "<<number[i]<<endl;
    sleep(2);
    hall();
}
void hecheng()
{
    cls;
    bgf();
}
void vip()
{
    cls;
    x("请输入密码");
    string ss;
    cin>>ss;
    if(ss[0]=='g'&&ss[1]=='z'&&ss[2]=='a'&&ss[3]=='1'&&ss[4]=='2'&&ss[5]=='3'&&ss[6]=='4'&&ss[7]=='5'&&ss[8]=='6')
    {
        money=vip_money;
        hall();
    }
    else
    {
        hall();
    }
}
void hall()
{
    cls;
    x("1.林场");
    x("2.矿洞");
    x("3.商场");
    x("4.打草场");
    x("5.农场");
    x("6.宝箱");
    x("7.背包");
    x("8.合成"); 
    x("9.VIP密码输入"); 
    x("10:关于本游戏的信息"); 
    x("请输入编号");
    int x;
    cin>>x;
    if(x==1) linchang();
    else if(x==2) kuangdong(); 
    else if(x==3) shangchang();
    else if(x==4) dacaochang();
    else if(x==5) nongchang();
    else if(x==6) baoxiang();
    else if(x==7) beibao();
    else if(x==8) hecheng();
    else if(x==9) vip(); 
    else if(x==10) xinxi();
}
void shangchang()
{
    cls;
    x("你要买(1)还是卖(2)?");
    int t;
    cin>>t;
    if(t==1)
    {
        x("本商店只卖原料,自己去合成");
        x("1.原木 15元一个");
        x("2.木棍 12元一个");
        int tt;
        cin>>tt;
        if(tt==1) 
        {
            if(money>=15) money-=15,number[1]++;
            else cout<<"你不能买!"; 
        }
        else if(tt==2)
        {
            if(money>=12) money-=12,number[4]++;
            else cout<<"你不能买!";
        }
    }
    else
    {
        x("1.原木 14元一个");
        x("2.木棍 11元一个");
        int tt;
        cin>>tt;
        if(tt==1)
        {
            if(number[1]==0) cout<<"你不能卖!";
            else money+=14,number[1]--; 
        }
        else if(tt==2)
        {
            if(number[1]==0) cout<<"你不能卖!";
            else money+=14,number[4]--; 
        }
    }
    hall(); 
}
void nongchang()
{
    cls;
    bgf(); 
}
void dacaochang()
{
    cls;
    x("欢迎来到打草场,这里有许许多多的草,打草有一定的概率掉落小麦种子,可以在农场中种植");
    sleep(2);
    cls;
    x("你要打几棵草?");
    int xt,s=0;
    cin>>xt;
    cls; 
    for(int i=1;i<=xt;i++)
    {
        cls;
        xx("打草中,还剩") ;
        cout<<xt-i+1;
        x("秒"); 
        if(rand()%3==0) s++;
        sleep(1);
    } 
    cls;
    xx("你打到了");
    cout<<s;
    xx("个小麦种子");
    number[11]+=s;
    sleep(1); 
    hall();
} 
void xinxi()
{
    x("打草掉落小麦种子概率:1/3");
    x("挖木头掉落苹果概率:1/4");
    x("本游戏版本为alpha1.0.3,后续更新版本需等待"); 
    sleep(2); 
    hall();
}
/*
1.原木
2.木板
3.工作台
4.木棍
5.木剑
6.木稿
7.木锄
8.木斧
9.苹果 
*/
int main(){
    srand(time(NULL));
    cls;
    hall(); 
} 


活动打卡代码 AcWing 2014. 岛

#include<iostream>
#include<cstring>
#include<algorithm>
# define x first
# define y second
using namespace std;
typedef pair<int,int> PII;
const int N=100010;
int n;
int h[N];
PII q[N];
int main()
{
    scanf("%d",&n);
    for(int i=1;i<=n;i++) scanf("%d",&h[i]);
    n=unique(h+1,h+n+1)-h-1;
    h[n+1]=0;
    for(int i=1;i<=n;i++) q[i]={h[i],i};
    sort(q+1,q+n+1);
    int res=1,cnt=1;
    for(int i=1;i<=n;i++)
    {
        int k=q[i].y;
        if(h[k-1]<h[k]&&h[k+1]<h[k]) cnt--;
        else if(h[k-1]>h[k]&&h[k+1]>h[k]) cnt++;
        if(q[i].x!=q[i+1].x) res=max(res,cnt);
    }
    printf("%d\n",res);
    return 0;
}


活动打卡代码 AcWing 2019. 拖拉机

龚子昂
11天前
#include <iostream>
#include <cstring>
#include <algorithm>
#include <deque>
#define x first
#define y second
using namespace std;
typedef pair<int,int> PII;
const int N=1010;
bool g[N][N],st[N][N];
int dist[N][N];
int bfs(int sx,int sy)
{
    deque<PII> q;
    q.push_back({sx,sy});
    memset(dist,0x3f,sizeof dist);
    dist[sx][sy]=0;
    int dx[4]={-1,0,1,0},dy[4]={0,1,0,-1};
    while (q.size())
    {
        auto t=q.front();
        q.pop_front();
        if (st[t.x][t.y]) continue;
        st[t.x][t.y]=1;
        if (!t.x&&!t.y) break;
        for (int i=0;i<4;i++)
        {
            int x=t.x+dx[i],y=t.y+dy[i];
            if (x>=0&&x<N&&y>=0&&y<N)
            {
                int w=0;
                if (g[x][y]) w=1;
                if (dist[x][y] > dist[t.x][t.y]+w)
                {
                    dist[x][y]=dist[t.x][t.y]+w;
                    if(!w) q.push_front({x,y});
                    else q.push_back({x,y});
                }
            }
        }
    }
    return dist[0][0];
}
int main()
{
    int n,sx,sy;
    scanf("%d%d%d",&n,&sx,&sy);
    while(n--)
    {
        int x,y;
        scanf("%d%d",&x,&y);
        g[x][y]=1;
    }
    printf("%d\n",bfs(sx,sy));
    return 0;
}


活动打卡代码 AcWing 2060. 奶牛选美

龚子昂
11天前
#include <iostream>
#include <cstring>
#include <algorithm>
using namespace std;
const int N = 55;
typedef pair<int, int> PII;
#define x first
#define y second
int n,m;
char g[N][N];
vector<PII> point[2];
int dx[4] = {-1, 0, 1, 0}, dy[4] = {0, 1, 0, -1};
void dfs(int x,int y,vector<PII>& ps)
{
    g[x][y]='.';
    ps.push_back({x,y});
    for(int i=0;i<4;i++)
    {
        int xx=x+dx[i],yy=y+dy[i];
        if(xx>=0&&xx<n&&yy>=0&&yy<m&&g[xx][yy]=='X') dfs(xx,yy,ps);
    }
}
int main()
{
    scanf("%d%d", &n, &m);
    for (int i = 0; i < n; i ++ ) cin>>g[i];
    for(int i=0,k=0;i<n;i++)
        for(int j=0;j<m;j++)
            if(g[i][j]=='X')
                dfs(i,j,point[k++]);
    int res=1e8;
    for(auto& a:point[0])
        for(auto& b:point[1])
        {
            res=min(res,abs(a.x-b.x)+abs(a.y-b.y)-1);
        }
    cout << res;
    return 0;
}


活动打卡代码 AcWing 1053. 修复DNA

龚子昂
14天前
#include <iostream>
#include <cstring>
#include <algorithm>
using namespace std;
const int N = 1010;
int n,m;
int tr[N][4],dar[N],idx;
int q[N],ne[N];
char str[N];
int f[N][N];
int get(char c)
{
    if(c=='A') return 0;
    if(c=='G') return 1;
    if(c=='T') return 2;
    return 3;
} 
void insert()  
{
    int p = 0;
    for (int i = 0; str[i]; i ++ )
    {
        int t=get(str[i]);
        if(tr[p][t]==0) tr[p][t]=++idx;
        p=tr[p][t];
    }
    dar[p]=1;
}
void build()
{
    int hh = 0, tt = -1;
    for (int i = 0; i < 4; i ++ )
        if (tr[0][i])
            q[ ++ tt] = tr[0][i];
    while (hh <= tt)
    {
        int t = q[hh ++ ];
        for (int i = 0; i < 4; i ++ )
        {
            int p = tr[t][i];
            if (!p) tr[t][i] = tr[ne[t]][i];
            else
            {
                ne[p] = tr[ne[t]][i];
                q[ ++ tt] = p;
                dar[p] |= dar[ne[p]];
            }
        }
    }
}
int main()
{
    int T=1;
    while(scanf("%d",&n),n)
    {
        memset(tr,0,sizeof tr);
        memset(dar,0,sizeof dar);
        memset(ne,0,sizeof ne);
        idx=0;
        for(int i=0;i<n;i++)
        {
            scanf("%s",str);
            insert();
        }
        build();
        scanf("%s",str+1);
        m=strlen(str+1);
        memset(f,0x3f,sizeof f);
        f[0][0]=0;
        for(int i=0;i<m;i++)
            for(int j=0;j<=idx;j++)
                for(int k=0;k<4;k++)
                {
                    int t = get(str[i + 1]) != k;
                    int p = tr[j][k];
                    if (!dar[p]) f[i + 1][p] = min(f[i + 1][p], f[i][j] + t);
                }
        int res=0x3f3f3f3f;
        for(int i=0;i<=idx;i++) res=min(res,f[m][i]);
        if(res==0x3f3f3f3f) res=-1;
        printf("Case %d: %d\n",T++,res);
    }
    return 0;
}