POJ-2339-Rock, Scissors, Paper
2013-06-29 19:47
751 查看
比较简单的一个剪刀石头布的问题,模拟的时候进行判断即可
代码:
代码:
#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 模拟
- 模拟->YY 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 2654 Rock-Paper-Scissors Tournament(水~)
- poj 3917 Rock, Paper, Scissors
- HDU2164:Rock, Paper, or Scissors?
- zoj 3610 Yet Another Story of Rock-paper-scissors 忽悠。。
- Python Mini Project - Rock Paper Scissors Lizard Spock
- Yet Another Story of Rock-paper-scissors
- hdu——Rock, Paper, Scissors
- (FFT)HDU 6088(2017 多校第5场 1004)Rikka with Rock-paper-scissors