🍿*★,°*:.☆( ̄▽ ̄)/$:*.°★* 🍿
🍟欢迎来到静渊隐者的csdn博文,本文是c++游戏制作指南的一部🍟
🍕更多文章请点击下方链接🍕
🍨 c++游戏制作指南🍨
🍜专栏介绍:在这一专栏中,我将循循善诱,带领你,在冷峻的控制台上,种满缤纷,一同走入c++控制台游戏的殿堂。
🥨适宜人群:学习C++语言三个月及以上的爱好者,熟记基础语法(选择、循环两大结构),掌握基础算法(高精度、排序、模拟、贪心、搜索、动规等),知晓基础数据结构(数组、字符串、链表、栈、队列、树、图)。
🌭学习目的:能够自主编写出有趣的c++控制台游戏,并掌握自学的方法。
🥞喜欢的朋友可以关注一下,下次更新不迷路
🥙前言
在一片静谧的森林中,淡金色的阳光透过树叶的缝隙,洒在柔软的青苔上,仿佛把时间的流动都放缓了。在这里,一切都显得那么和谐,那么美好。森林的每一片树叶,每一株草,甚至每一丝风,都充满了生命的气息,这种气息是如此清新,如此宁静,仿佛是大自然的呼吸,使得人们愿意停下脚步,侧耳倾听。
#include <iostream> using namespace std; #define N 100010 #define INF 1e9 #define ls(x) tr[x].s[0] #define rs(x) tr[x].s[1] int n, m; struct node{ int s[2]; //左右儿子 int p; //父亲 int v; //节点权值 int cnt; //权值出现次数 int siz; //子树大小 void init(int p1,int v1){ p=p1, v=v1; cnt=siz=1; } }tr[N]; int root; //根节点编号 int idx; //节点个数 void pushup(int x){ tr[x].siz=tr[ls(x)].siz+tr[rs(x)].siz+tr[x].cnt; } void rotate(int x){ int y=tr[x].p, z=tr[y].p; int k = tr[y].s[1]==x; tr[z].s[tr[z].s[1]==y] =x; tr[x].p = z; tr[y].s[k] = tr[x].s[k^1]; tr[tr[x].s[k^1]].p = y; tr[x].s[k^1] = y; tr[y].p = x; pushup(y), pushup(x); } void splay(int x, int k){ while(tr[x].p!=k){ int y=tr[x].p, z=tr[y].p; if(z!=k) // 折转底,直转中 (ls(y)==x)^(ls(z)==y) ? rotate(x) : rotate(y); rotate(x); } if(k==0) root = x; } void insert(int v){ //插入 int x=root, p=0; while(x && tr[x].v!=v) p=x, x=tr[x].s[v>tr[x].v]; if(x) tr[x].cnt++; else{ x=++idx; tr[p].s[v>tr[p].v]=x; tr[x].init(p,v); } splay(x, 0); } void find(int v){ //找到v并转到根 int x=root; while(tr[x].s[v>tr[x].v]&&v!=tr[x].v) x=tr[x].s[v>tr[x].v]; splay(x, 0); } int getpre(int v){ //前驱 find(v); int x=root; if(tr[x].v<v) return x; x=ls(x); while(rs(x))x=rs(x); return x; } int getnxt(int v){ //后继 find(v); int x=root; if(tr[x].v>v) return x; x=rs(x); while(ls(x))x=ls(x); return x; } void del(int v){ //删除 int pre=getpre(v); int suc=getnxt(v); splay(pre,0), splay(suc,pre); int del=tr[suc].s[0]; if(tr[del].cnt>1) tr[del].cnt--, splay(del,0); else tr[suc].s[0]=0,splay(suc,0); } int getrank(int v){ //排名 find(v); return tr[tr[root].s[0]].siz; } int getval(int k){ //数值 int x=root; while(1){ int y=ls(x); if(tr[y].siz+tr[x].cnt<k) k -= tr[y].siz+tr[x].cnt, x = rs(x); else if(tr[y].siz>=k) x=y; else break; } splay(x, 0); return tr[x].v; } int main(){ insert(-INF);insert(INF); //哨兵 scanf("%d", &n); while(n--){ int op,x; scanf("%d%d", &op, &x); if(op==1) insert(x); if(op==2) del(x); if(op==3) printf("%d\n",getrank(x)); if(op==4) printf("%d\n",getval(x+1)); if(op==5) printf("%d\n",tr[getpre(x)].v); if(op==6) printf("%d\n",tr[getnxt(x)].v); } return 0; }
🥪一、XXX
在这片神秘的森林中,有一条清澈的小溪穿过,溪水淙淙,如歌如诗,它从山脚下流过,石头上溅起的水花,像是在讲述着每一个美丽的故事。小溪的两旁,野花繁茂,五彩斑斓,它们在微风中轻轻摇曳,花香四溢,与溪水的歌声交织在一起,构成了一首动人的乐章。
🍰二、XXX
向远处望去,森林的尽头是一座静默的山峰,它矗立在那儿,默默地守护着这片美丽的土地。山峰之上的云雾缭绕,如同仙气缭绕,给人一种宁静而神秘的感觉。山脚下,一片湖泊安静地卧着,湖水如镜,倒映着山峰的雄伟和天空的蔚蓝,一切都显得那么和谐,那么宁静。
🌮三、XXX
在这片大自然的画卷中,人们仿佛能找到内心的宁静和身心的放松。在这里,我们可以忘记城市的喧嚣和繁忙,感受到大自然的美丽和宁静。这是一片没有杂质,没有纷扰,只有自然和和谐的土地。在这样的环境中,我们仿佛能找到自我,找到那份来自内心的平静和宁静。
🍔四、XXX
在森林的深处,还有一片神秘的花园,那里盛开着各种奇特的花朵。花朵们竞相开放,色彩斑斓,形态各异,散发出馥郁的芳香,令人陶醉。花园的中心是一棵古老的树,它的枝叶繁茂,遮天蔽日,给人一种威严而又神秘的感觉。
在这片神秘的花园中,有许多小动物们穿梭其间,它们时而欢快地奔跑,时而悠闲地漫步,它们的存在给这片森林增添了更多的生机与活力。
太阳渐渐落下,天空被染上了一片金黄色,美丽的晚霞把整个森林映照得如梦如幻。此时,森林里的每一处都散发着温暖的光芒,仿佛是大自然的画卷,美得令人窒息。
夜幕降临,星星在天空中闪烁,一轮明亮的月亮高悬天际,照亮了整个森林。夜晚的森林变得更加神秘而美丽,一切都显得那么静谧,那么祥和。
这片美丽的森林,是一个充满生机和和谐的地方,它让人们忘却烦恼,感受到大自然的美丽和力量。在这里,我们可以感受到生命的脉动,可以听到大地的的心跳,可以闻到空气中弥漫的幸福和喜悦。
这是一个值得我们珍惜和保护的地方,是一个能让我们心灵得到净化和慰藉的净土。让我们用心去感受这片美丽的森林,去感受大自然的美丽和神秘,去寻找那份来自内心的平静和宁静。
🍣五、结语
在森林的更深处,有一条蜿蜒的小路,它穿越密密的树林,通向了未知的远方。小路两旁长满了各种花草,它们在微风中轻轻摇曳,发出淡淡的芳香。沿着这条小路向前走,仿佛进入了一个神秘的世界,每一个转角都有可能遇见未知的惊喜。
在小路的尽头,是一片静谧的湖面。湖面宛如一面镜子,倒映着周围的树木和天空,形成了一幅美丽的画卷。湖水清澈见底,鱼儿在水中自由自在地游弋,偶尔跃出水面,溅起一串串水花。湖边长满了柳树,它们在微风中轻轻拂动着,仿佛在向游客们讲述着这片森林的故事。
湖的另一侧是一座小山,山上长满了各种各样的树木和花草。登上山顶,可以俯瞰整个森林,远处的景色如诗如画,令人陶醉。在山顶上还有一个古老的寺庙宇,它静静地矗立在那里,散发着神秘的气息。进入庙宇,可以看到许多古老的佛像和神秘的符咒,感受到一种神秘而庄严的氛围。
回到森林中,夜幕已经降临。星空如同撒满了钻石的黑色幕布,闪烁着耀眼的光芒。月亮高悬天际,洒下柔和的月光,照亮了整个森林。此时,森林里的每一处都变得神秘而美丽,仿佛是一个仙境。在这片神秘的森林中,人们仿佛可以感受到自然的神秘力量,可以听到大地的的心跳,可以闻到空气中弥漫的幸福和喜悦。
这片美丽的森林是大自然的杰作,是自然的恩赐。它让人们忘却烦恼,感受到大自然的美丽和力量。在这里,我们可以感受到生命的脉动,可以听到大地的的心跳,可以闻到空气中弥漫的幸福和喜悦。这是一个值得我们珍惜和保护的地方,是一个能让我们心灵得到净化和慰藉的净土。
我们应该珍惜这片森林,保护它的自然环境,不让任何形式的破坏和污染破坏它的美丽和宁静。我们要用行动去爱护它,去照顾它,去保护它,让它的美丽和神秘得以延续。
在这片神秘的森林中,我们不仅可以感受到大自然的的美和神秘,还可以从中汲取到力量和勇气。当我们遇到困难和挫折时,我们可以从森林中汲取到坚持和奋斗的力量;当我们感到疲惫和迷茫时,我们可以从森林中感受到宁静和安详的力量。这片森林是我们的精神家园,是我们的力量源泉。
让我们用心去感受这片美丽的森林,去感受大自然的美丽和神秘,去寻找那份来自内心的平静和宁静。让我们用行动去爱护它,去照顾它,去保护它,让它的美丽和神秘得以延续。因为这片森林不仅是大自然的杰作,更是我们心灵的净土,是我们生命中的宝贵财富。
编辑