百练noi 16:矩阵剪刀石头布
来源:互联网 发布:淘宝频现违规刀具 编辑:程序博客网 时间:2024/06/15 09:23
16:矩阵剪刀石头布
- 查看
- 提交
- 统计
- 提问
- 总时间限制:
- 5000ms
- 内存限制:
- 65536kB
- 描述
Bart的妹妹Lisa在一个二维矩阵上创造了新的文明。矩阵上每个位置被三种生命形式之一占据:石头,剪刀,布。每天,上下左右相邻的不同生命形式将会发生战斗。在战斗中,石头永远胜剪刀,剪刀永远胜布,布永远胜石头。每一天结束之后,败者的领地将被胜者占领。
你的工作是计算出n天之后矩阵的占据情况。
- 输入
- 第一行包含三个正整数r,c,n,分别表示矩阵的行数、列数以及天数。每个整数均不超过100。
接下来r行,每行c个字符,描述矩阵初始时被占据的情况。每个位置上的字符只能是R,S,P三者之一,分别代表石头,剪刀,布。相邻字符之间无空格。 - 输出
- 输出n天之后的矩阵占据情况。每个位置上的字符只能是R,S,P三者之一,相邻字符之间无空格。
- 样例输入
3 3 1RRRRSRRRR
- 样例输出
RRRRRRRRR
- 来源
Waterloo local 2003.01.25
代码:
#include<iostream>using namespace std;char a[101][101],b[101][101];int main(){int r,c,n,i,j;cin>>r>>c>>n;for(i=1;i<=r;i++)for(j=1;j<=c;j++)cin>>a[i][j];for(int d=1;d<=n;d++){for(i=1;i<=r;i++)for(j=1;j<=c;j++)b[i][j]=a[i][j];for(i=1;i<=r;i++)for(j=1;j<=c;j++){if(b[i][j]=='R'&&(b[i][j-1]=='P'||b[i-1][j]=='P'||b[i][j+1]=='P'||b[i+1][j]=='P'))a[i][j]='P';if(b[i][j]=='S'&&(b[i][j-1]=='R'||b[i-1][j]=='R'||b[i][j+1]=='R'||b[i+1][j]=='R'))a[i][j]='R';if(b[i][j]=='P'&&(b[i][j-1]=='S'||b[i-1][j]=='S'||b[i][j+1]=='S'||b[i+1][j]=='S'))a[i][j]='S';}}for(i=1;i<=r;i++){for(j=1;j<=c;j++)cout<<a[i][j];cout<<endl;}return 0;}
阅读全文
0 0
- 百练noi 16:矩阵剪刀石头布
- 16:矩阵剪刀石头布
- 16:矩阵剪刀石头布
- noi-4973-石头剪刀布
- OPENJUDGE 1.8 16:矩阵石头剪刀布
- 16_矩阵剪刀石头布
- 16:矩阵剪刀石头布(1.8编程基础之多维数组)
- 石头-剪刀-布
- 石头剪刀布
- 剪刀石头布
- 剪刀、石头、布游戏
- 剪刀 石头 布
- 石头剪刀布
- 剪刀石头布
- 石头剪刀布
- 剪刀石头布游戏
- 剪刀石头布
- 剪刀石头布游戏
- AngularJS入门-(12)http
- 阮一峰大神的前端全栈教程
- Hdu6063 RXD and math(2017多校第3场)
- 解决Android拍照6.0以上动态获取权限问题
- Webproject 每次运行都停到 workerDone(this);
- 百练noi 16:矩阵剪刀石头布
- QT_opengl_gluPerspective没有定义的处理方法
- 文学的理由
- [编程题] 循环单词
- CVPR 2017 目标跟踪相关项目
- PHP实现文件的上传
- errno详解(转)
- 马士兵Servlet&JSP(2.JSP)源代码
- 数据结构—单链表