POJ-2339-Rock, Scissors, Paper
来源:互联网 发布:matlab mac安装教程 编辑:程序博客网 时间:2024/06/04 20:06
比较简单的一个剪刀石头布的问题,模拟的时候进行判断即可
代码:
#include<cstdio>#include<cstring>#include<iostream>using namespace std;char map[111][111],ans[111][111];int n,m,t,movex[4]={0,0,1,-1},movey[4]={1,-1,0,0};bool isborder(int x,int y){ if(x<0||x>=n||y<0||y>=m)return true; return false;}bool Get(char a,char b){ if(a=='R'&&b=='P')return true; if(a=='S'&&b=='R')return true; if(a=='P'&&b=='S')return true; return false;}int main(){ int T; scanf("%d",&T); while(T--) {scanf("%d%d%d",&n,&m,&t);for(int i=0;i<n;i++) scanf("%s",map[i]);memcpy(ans,map,sizeof(map));for(int i=0;i<t;i++){ for(int j=0;j<n;j++)for(int k=0;k<m;k++){ int flag=0; for(int l=0;l<4;l++) {int itx=j+movex[l];int ity=k+movey[l];if(isborder(itx,ity)) continue;if(Get(map[j][k],map[itx][ity])){ ans[j][k]=map[itx][ity]; flag=1;} } if(!flag)ans[j][k]=map[j][k];} memcpy(map,ans,sizeof(ans));}for(int i=0;i<n;i++){ ans[i][m]='\0'; printf("%s\n",ans[i]);}printf("\n"); } return 0;}
- poj 2339 Rock, Scissors, Paper
- POJ 2339 Rock, Scissors, Paper
- POJ-2339-Rock, Scissors, Paper
- poj 2339 Rock, Scissors, Paper
- POJ - 2339 Rock, Scissors, Paper
- poj 2339 Rock, Scissors, Paper
- poj 2339 Rock, Scissors, Paper
- poj 2339 Rock, Scissors, Paper 模拟
- 模拟->YY POJ 2339 Rock, Scissors, Paper
- POJ 2339 Rock, Scissors, Paper(模拟)
- POJ 2339 Rock, Scissors, Paper 模拟
- POJ 2339 Rock, Scissors, Paper 笔记
- poj 3917 Rock, Paper, Scissors
- poj 2654 Rock-Paper-Scissors Tournament
- POJ-2654-Rock-Paper-Scissors Tournament
- POJ 3917 Rock, Paper, Scissors G++
- Rock-Paper-Scissors
- 【poj2339】Rock, Scissors, Paper
- 程序员的四种类型
- POJ-3061-Subsequence
- java与设计模式之适配器模式
- zlib简单示例代码,compress、uncompress
- 如何为 Linux 卸载 Java
- POJ-2339-Rock, Scissors, Paper
- PPTP穿透NAT之深入分析
- Qt属性系统
- HDU 1293 The Number of Paths
- 图的广度遍历(BFS)
- 每日学习心得:未定义的命名空间前缀"xsd"问题和<%%>、<%=%>、<%$%>、<%@%>的区别
- 《人人都是产品经理》笔记【二】
- 存储过程调试
- 如何编译PHP源代码(Zend Encode使用方法)