Advertisement
a53

PatratMagic0

a53
Sep 8th, 2019
348
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.20 KB | None | 0 0
  1. #include <iostream>
  2. using namespace std;
  3. int F[250001];
  4.  
  5. int main()
  6. {
  7. int n;
  8. cin>>n;
  9. int a[n][n],np=n*n;;
  10. unsigned long long int s,s_ant;
  11. for(int i=0;i<n;++i)
  12. {
  13. s=0;
  14. for(int j=0;j<n;++j)
  15. {
  16. cin>>a[i][j];
  17. if(a[i][j]<1||a[i][j]>np)
  18. {
  19. cout<<"false";
  20. return 0;
  21. }
  22. ++F[a[i][j]],s+=a[i][j];
  23. }
  24. if(i&&s!=s_ant)
  25. {
  26. cout<<"false";
  27. return 0;
  28. }
  29. s_ant=s;
  30. }
  31. for(int i=1;i<=np;++i)
  32. if(F[i]>1)
  33. {
  34. cout<<"false";
  35. return 0;
  36. }
  37. for(int j=0;j<n;++j)
  38. {
  39. s=0;
  40. for(int i=0;i<n;++i)
  41. s+=a[i][j];
  42. if(j&&s!=s_ant)
  43. {
  44. cout<<"false";
  45. return 0;
  46. }
  47. s_ant=s;
  48. }
  49. s=0;
  50. for(int i=0;i<n;++i)
  51. s+=a[i][i];
  52. if(s!=s_ant)
  53. {
  54. cout<<"false";
  55. return 0;
  56. }
  57. s=0;
  58. for(int i=0;i<n;++i)
  59. s+=a[n-i-1][i];
  60. if(s!=s_ant)
  61. {
  62. cout<<"false";
  63. return 0;
  64. }
  65. cout<<"true";
  66. return 0;
  67. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement