fork download
  1. #include <stdio.h>
  2.  
  3.  
  4. int is_magic(int *m, size_t size)
  5. {
  6. int sum = 0;
  7.  
  8. for(size_t col = 0; col < size; col++)
  9. {
  10. sum += m[col];
  11. }
  12.  
  13. for(size_t row = 1; row < size; row++)
  14. {
  15. int psum = 0;
  16. for(size_t col = 0; col < size; col++)
  17. {
  18. psum += m[col + row * size];
  19. }
  20. if(psum != sum) return 0;
  21. }
  22.  
  23. for(size_t col = 0; col < size; col++)
  24. {
  25. int psum = 0;
  26. for(size_t row = 0; row < size; row++)
  27. {
  28. psum += m[col + row * size];
  29. }
  30. if(psum != sum) return 0;
  31. }
  32. return 1;
  33. }
  34.  
  35. int m[3][3] =
  36. {
  37. {8, 1, 6},
  38. {3, 5, 7},
  39. {4, 9, 2},
  40. };
  41.  
  42. int m1[3][3] =
  43. {
  44. {8, 1, 6},
  45. {3, 9, 7},
  46. {4, 9, 2},
  47. };
  48.  
  49.  
  50. int main()
  51. {
  52. printf("%d\n", is_magic(m,3));
  53. printf("%d\n", is_magic(m1,3));
  54.  
  55. return 0;
  56. }
  57.  
  58.  
  59.  
Success #stdin #stdout 0s 9424KB
stdin
Standard input is empty
stdout
1
0