Advertisement
Guest User

cursa

a guest
Nov 13th, 2019
103
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.13 KB | None | 0 0
  1. #include <iostream>
  2. using namespace std;
  3. const int N=505;
  4. int n,m,i,j,ok,ans;
  5. int a[N][N],f[N][N];
  6. int prim(int x)
  7. {
  8. if(x==0||x==1) return 0;
  9. for(int i=2; i*i<=x; i++)
  10. if(x%i==0) return 0;
  11. return 1;
  12. }
  13.  
  14. int sum(int x)
  15. {
  16. if(x/10==0) return x%10;
  17. else return x%10+sum(x/10);
  18. }
  19.  
  20. int main()
  21. {
  22. cin>>n>>m;
  23. for(i=1; i<=n; i++)
  24. for(j=1; j<=m; j++)
  25. cin>>a[i][j];
  26.  
  27. i=1,j=1;
  28. while(i!=n || j!=m)
  29. {
  30. ans++;
  31. ok=1;
  32. if(!f[i][j] && prim(a[i][j]))
  33. {
  34. if(i==1 && j==1) ok=0;
  35. else if(i==1) f[i][j]=1,j--;
  36. else if(j==1) f[i][j]=1,i--;
  37. else f[i][j]=1,i--,j--;
  38. }
  39. else if(!f[i][j] && prim(sum(a[i][j])))
  40. {
  41. if(i==n) f[i][j]=1,j++;
  42. else if(j==m) f[i][j]=1,i++;
  43. else f[i][j]=1,i++,j++;
  44. }
  45. else
  46. {
  47. j++;
  48. if(j==m+1)
  49. j=1,i++;
  50. }
  51. if(ok==0)
  52. {
  53. j++;
  54. if(j==m+1)
  55. j=1,i++;
  56. }
  57. }
  58. cout<<ans+1;
  59. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement