Advertisement
Guest User

Untitled

a guest
Dec 21st, 2015
72
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.38 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #define MAX 100
  4. int tl[MAX][MAX];
  5. int tn[MAX][MAX];
  6. int m, n;
  7. int zxc(int i, int j){
  8. if(i <= 0 || j <= 0 || i >= m || j >= m){
  9. return 0;
  10. }
  11. return tl[i][j] == '*';
  12. }
  13. char asdfghjkl(int i, int j){
  14. int sum = 0;
  15. sum += zxc(i + 1, j + 1);
  16. sum += zxc(i + 1, j);
  17. sum += zxc(i + 1, j - 1);
  18. sum += zxc(i, j + 1);
  19. sum += zxc(i, j - 1);
  20. sum += zxc(i - 1, j + 1);
  21. sum += zxc(i - 1, j);
  22. sum += zxc(i - 1, j - 1);
  23. if(tl[i][j] == '*' && sum < 3){
  24. return '.';
  25. }
  26. if(tl[i][j] == '*' && sum > 3){
  27. return '.';
  28. }
  29. if(sum == 3){
  30. return '*';
  31. }
  32. return tl[i][j];
  33.  
  34. }
  35.  
  36. void qwertyuiop(){
  37. void * t = * tl;
  38. *tl = *tn;
  39. *tn = t;
  40. int i, j;
  41. for(i = 0; i < m; i++){
  42. for(j = 0; j < m; j ++){
  43. tn[i][j] = asdfghjkl(i, j);
  44. }
  45. }
  46.  
  47. }
  48.  
  49. int main()
  50. {
  51.  
  52. scanf("%d %d", &m, &n);
  53. int i;
  54. char tmpstr[MAX + 1];
  55. for(i = 0; i < m; i++){
  56. scanf("%s", tmpstr);
  57. int j;
  58. for(j = 0; j < m; j++){
  59. tn[i][j] = tmpstr[j];
  60. }
  61. }
  62. while(n --){
  63. qwertyiop();
  64. }
  65. for(i = 0; i < m; i++){
  66.  
  67. int j;
  68. for(j = 0; j < m; j++){
  69. printf("%c", tn[i][j]);
  70. }
  71. printf("\n");
  72. }
  73. return 0;
  74. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement