-
个人简介
3H+3A=HAHAHABa+2Na=BaNaNaMN+2O=MOON贪吃蛇
#include <iostream> #include <cstdio> #include <cstdlib> #include <ctime> #include <conio.h> #include <cmath> #include <windows.h> using namespace std; HANDLE hout=GetStdHandle(STD_OUTPUT_HANDLE); COORD coord; void locate(int x,int y){ coord.X=y; coord.Y=x; SetConsoleCursorPosition(hout,coord); }; void hide(){ CONSOLE_CURSOR_INFO cursor_info={1,0}; SetConsoleCursorInfo(hout, &cursor_info); } double random(double start, double end){ return start+(end-start)*rand()/(RAND_MAX + 1.0); } int m=25,n=40; struct node{ int x,y; }snake[1000]; int snake_length,dir; node food; int direct[4][2]={{-1,0},{1,0},{0,-1},{0,1}}; void print_wall(){ cout<<" "; for(int i=1;i<=n;i++)cout<<"-"; cout<<endl; for (int j=0;j<=m-1;j++){ cout<<"|"; for(int i=1;i<=n;i++)cout<<" "; cout<<"|"<<endl; } cout<<" "; for(int i=1;i<=n;i++)cout<< "-"; } void print_snake(){ locate(snake[0].x,snake[0].y); cout<<"@"; for(int i=1;i<=snake_length-1;i++) { locate(snake[i].x,snake[i].y); cout << "*"; } } bool is_correct(){ if (snake[0].x==0 || snake[0].y==0 || snake[0].x==m+1 || snake[0].y==n+1) return 0; for(int i=1;i<=snake_length-1;i++)if(snake[0].x==snake[i].x&&snake[0].y==snake[i].y)return 0; return 1; } bool print_food(){ srand((unsigned)time(0)); bool e; while (1) { e=true; int i=(int)random(0,m)+1,j=(int)random(0,n)+1; food.x=i;food.y=j; for (int k=0;k<=snake_length-1;k++){ if(snake[k].x==food.x && snake[k].y==food.y) { e=false; break; } } if(e)break; } locate(food.x,food.y); cout<<"$"; return true; } bool go_ahead(){ node temp; bool e=false; temp=snake[snake_length-1]; for(int i=snake_length-1;i>=1;i--)snake[i]=snake[i-1]; snake[0].x+=direct[dir][0]; snake[0].y+=direct[dir][1]; locate(snake[1].x,snake[1].y); cout << "*"; if(snake[0].x==food.x&&snake[0].y==food.y) { snake_length++; e=true; snake[snake_length-1]=temp; } if (!e) { locate(temp.x,temp.y); cout << " "; } else print_food(); locate(snake[0].x,snake[0].y); cout<<"@"; if (!is_correct()) { system("cls"); cout << "You lose!" << endl << "Length: " << snake_length << endl; return false; } return true; } int main() { cout<<"--------------------贪吃蛇---------------------"<<endl; cout<<"请注意窗口大小,以免发生错位.建议将窗口调为最大."<<endl; cout<<"先选择难度.请在1-10中输入1个数,1最简单,10则最难"<<endl; cout<<"然后进入游戏画面,以方向键控制方向.祝你游戏愉快!"<<endl; cout<<"-----------------------------------------------"<<endl; if(m<10||n<10||m>25||n>40){ cout<<"ERROR"<<endl; system("pause"); return 0; } int hard; cin>>hard; if(hard<=0||hard>100){ cout<<"ERROR"<<endl; system("pause"); return 0; } snake_length=5; clock_t a,b; char ch; double hard_len; for(int i=0;i<=4;i++){ snake[i].x=1; snake[i].y=5-i; } dir=3; system("cls"); hide(); print_wall(); print_food(); print_snake(); locate(m+2,0); cout<<"Now length: "; while (1) { hard_len=(double)snake_length/(double)(m*n); a=clock(); while (1) { b=clock(); if(b-a>=(int)(400-30*hard)*(1-sqrt(hard_len)))break; } if(kbhit()) { ch=getch(); if(ch==-32) { ch=getch(); switch(ch) { case 72: if(dir==2||dir==3) dir=0; break; case 80: if(dir==2||dir==3) dir=1; break; case 75: if(dir==0||dir==1) dir=2; break; case 77: if(dir==0||dir==1) dir=3; break; } } } if(!go_ahead())break; locate(m+2,12); cout<<snake_length; } system("pause"); return 0; }思来想去,就让思来去了
不要总和别人比。
比弊时,可能会感到自卑;
比利时,是欧洲的一个国家。
耶稣
路易十六
耶稣
路易十六
耶稣
路易十六
耶稣
商鞅
商鞅
(耶易耶易耶易耶五五)
耶稣
路易十六
耶稣
路易十六
耶稣
路易十六
耶稣
商鞅
商鞅
(耶易耶易耶易耶五五)
恭~喜~你~发~财~
我恭~喜~你~精~彩~
好--无--聊--啊......
这里有无神秘UT入?
人落枕就是入
(怨气+1)
(怨气+1)
(怨气+1)
(怨气+10086)
我不想期中考(涕泪横流)(突然变异)
(这里有喜欢Flowey的UT入吗)
(这里有绿蓝姐吗)
(这里有推风息的吗)
(已关机)
(重启)
(没了)
(骗你的)
我的歌单:
His Theme
Finale
Last Goodbye
Fallen Down
Your Best Friend
Your Best Nightmare
NGAHHH!!!
Battle Against A Ture Hero
Death By Glamour
Sans
MEGALOVANIA(狂妄之人)
Nyeh Heh Heh!
(当我放这些歌时...)
*听到熟悉的音乐,这使你充满了决心
(当我听以下歌时)
蛋糕店里买蛋糕 (我去你的废话文学!!!!!!!!!!!!!!!!!!!!!)
*你的决心碎了一地
-
通过的题目
-
最近活动
- 少年宫周五晚上高级c1班【吴飞】第五周 作业
- 少年宫周五晚上高级c1班【吴飞】第四周 作业
- 少年宫周五晚上高级c1班【吴飞】第三节课 作业
- 少年宫周五晚上高级c1班【吴飞】第二节课 作业
- 省秀周一下午信息队(并查集&拓扑&最小生成树) 作业
- 少年宫周五晚上高级c1班【吴飞】第一节课 作业
- 省秀开学测试 IOI
- 递归 IOI
- GESP四级编程题目 作业
- 中级b3班期末测验 IOI
- 少年宫周六晚上中级A3班【吴飞】(综合练习) 作业
- 省秀南山班零基础7【张正标】 作业
- 少年宫周六晚上中级A3班【吴飞】 作业
- 少年宫周六晚上中级A3班【吴飞】 作业
- 省秀南山班零基础6【张正标】 作业
- 省秀复习 作业
- 少年宫周六晚上中级A3班【吴飞】 作业
- 少年宫周六晚上中级A3班【吴飞】 作业
- 少年宫周六晚上中级A3班【吴飞】(综合复习) 作业
- 省秀南山班零基础3【张正标】 作业
- 少年宫周六晚上中级A3班【吴飞】(递推2) 作业
- 省秀南山班零基础2【张正标】 作业
- 少年宫周六晚上中级A3班【吴飞】(递推) 作业
- 少年宫周六晚上中级A3班【吴飞】 作业
- 少年宫周六晚上中级A3班(2025 1018)【吴飞】 作业
- 初级B班复习 IOI
- csp普专提模拟5 OI
- 递推 作业
- 添胜J组集训day10(张正标) 作业
- 添胜J组集训day9 IOI
- 添胜J组集训day9(张正标) 作业
- 添胜J组集训day8 IOI
- 添胜J组集训day8(张正标) 作业
- 添胜J组集训day7 IOI
- 添胜J组集训day7(张正标) 作业
- 添胜J组集训day6(张正标) 作业
- 添胜J组集训day6 IOI
- 添胜J组集训day5 IOI
- 添胜J组集训day5(张正标) 作业
- 添胜J组集训day4 IOI
- 添胜J组集训day4(张正标) 作业
- 添胜J组集训day3 IOI
- 添胜J组集训day3(张正标) 作业
- 添胜J组集训day2 IOI
- 添胜J组集训day2(张正标) 作业
- 添胜J组集训day1(张正标) 作业
- 周六中级B3班期末测验 IOI
- 少年宫周六晚上中级班(2025 0607)【吴飞】 作业
- 少年宫周五晚上中级班(2025 0606)【吴飞】 作业
- 少年宫周六晚上中级班(2025 0524)【吴飞】 作业
- 少年宫周六晚上中级班(2025 0510)【吴飞】 作业
- 少年宫周六晚上中级班(20250419)【吴飞】 作业
- 少年宫周六晚上中级班(20250412)【吴飞】 作业
- 越秀区少年宫4月月测(初级) OI
- 少年宫周六晚上中级班(20250329)【吴飞】 作业
- 少年宫周五晚上高级C3班(20250328)【吴飞】 作业
- 少年宫周六晚上中级班(20250322)【吴飞】 作业
- 省秀南山班练习(2025/03/14)【张正标】 作业
- 少年宫周六晚上中级B班【吴飞】 作业
- 少年宫周六晚上中级B班【吴飞】 作业
- 少年宫中级C3班期末综合测试 IOI
- 少年宫周六晚上中级班(20241221)【吴飞】 作业
- 少年宫周六晚上中级班(20241214)【吴飞】 作业
- 少年宫周六晚上中级班(20241207)【吴飞】 作业
- 少年宫周六晚上中级班(20241123)【吴飞】 作业
- 少年宫周六晚上中级班(20241123)【吴飞】 作业
- 少年宫周六晚上中级班(20241116)【吴飞】 作业
- 少年宫周六晚上中级班(20241109)【吴飞】 作业
- 少年宫周六晚上中级班(20241102)【吴飞】 作业
- 少年宫周六晚上中级班(20241026)【吴飞】 作业
- 2024少年宫初级B3班 IOI
- 初级B班阶段测试 IOI
- 少年宫周六晚上初级班(20240413)【吴飞】 作业
- 少年宫周六晚上初级班(20240323)【吴飞】 作业
- 少年宫周六初级C3班期末测试 IOI
- 周六初级班2 IOI
-
最近编写的题解
This person is lazy and didn't write any solutions.
题目标签
- 语言基础
- 36
- 其他
- 19
- 循环语句
- 17
- 竞赛
- 15
- 搜索
- 12
- NOIP
- 11
- 递归
- 10
- 排序
- 10
- 贪心
- 9
- 模拟
- 8
- DFS
- 7
- 二分
- 7
- 普及组
- 7
- 年份
- 7
- GESP四级
- 6
- 动态规划
- 5
- 二分答案
- 5
- 一维数组
- 5
- 二分查找
- 5
- 2010
- 4