ECNUOJ 2855 贪吃蛇
2015-07-05 12:33
441 查看
[b]贪吃蛇[/b]
Time Limit:1000MS Memory Limit:65536KB
Total Submit:480 Accepted:109
Description
View Code
Time Limit:1000MS Memory Limit:65536KB
Total Submit:480 Accepted:109
Description
#include <bits/stdc++.h> using namespace std; const int maxn = 110; char table[maxn][maxn]; int H,W,T,f[1001] = {0,1}; const int dir[4][2] = {-1,0,0,1,1,0,0,-1}; bool isIn(int x,int y){ return x < H && x >= 0 && y >= 0 && y < W; } int solve(){ int life = isdigit(table[0][0])?table[0][0] - '0':0,nowdir = 0,time = 0; int x = 0,y = 0; while(time < T){ int nx = x + dir[nowdir = f[time]][0]; int ny = y + dir[f[time]][1]; while(!isIn(nx,ny)){ nowdir++; nx = x + dir[nowdir%4][0]; ny = y + dir[nowdir%4][1]; } x = nx; y = ny; time++; if(isdigit(table[x][y])) life += table[x][y] - '0'; } return life; } int main(){ for(int i = 2; i < 1001; ++i) f[i] = (f[i-1] + f[i-2])%4; while(~scanf("%d%d%d",&H,&W,&T)){ for(int i = 0; i < H; ++i) scanf("%s",table[i]); printf("%d\n",solve()); } return 0; }
View Code
相关文章推荐
- 十五天精通WCF——第九天 高级玩法之自定义Behavior
- UVA340 Master-Mind Hints
- 二叉排序树
- SpannableString的一个奇怪的问题
- android stuido环境下获取sha1的方法
- 实用的Class类
- adb server is out of date.killing的解决办法
- nutz中实现登录验证
- .NET 下第一次接触Redis数据库
- 【二十一】创建二叉树--指路法
- jvm垃圾收集(标记-清除,复制,标记-整理,分代)算法
- 学生信息管理系统(三)——接口分析
- OpenCV+MFC显示图像
- BZOJ3682 Phorni
- Eclipse快捷键 10个最有用的快捷键
- 传统文化
- ocp053第411题
- 获取定位信息
- String类
- unity, Destroy注意事项