Advertisement
Dennnhhhickk

Untitled

Mar 31st, 2017
74
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.05 KB | None | 0 0
  1. #include <iostream>
  2. #include <cmath>
  3. #include <math.h>
  4. #include <vector>
  5. #include <set>
  6.  
  7. using namespace std;
  8. typedef long long ll;
  9. struct tt{
  10. ll sum, num;
  11. };
  12. set <ll> prost1;
  13. tt ans;
  14. int a[1510][1510], n, m;
  15. int fnd(int ii, int jj){
  16. }
  17.  
  18. int main()
  19. {
  20. ios::sync_with_stdio(0);
  21. ll mx;
  22. cin >> n >> m;
  23. for (int i = 0; i < n; i++)
  24. for (int j = 0; j < m; j++){
  25. cin >> a[i][j];
  26. }
  27. mx = 1000000;
  28. vector <char> prime (mx + 1, true);
  29. prime[0] = prime[1] = false;
  30. for (int i = 2; i <= mx; i++)
  31. if (prime[i]){
  32. prost1.insert(i);
  33. if (i * 1ll * i <= mx)
  34. for (int j = i * i; j <= mx; j += i)
  35. prime[j] = false;
  36. }
  37. ans.sum = 0;
  38. ans.num = 0;
  39. ll temp;
  40. int ii;
  41. for (int i = 0; i < n; i++)
  42. for (int j = 0; j < m; j++)
  43. if (a[i][j]!= 0){
  44. temp = 0;
  45. for (int ii = 0; i + ii < n && ii <= 6; ii++){
  46. temp = temp * 10 + a[i + ii][j];
  47. if (prost1.find(temp) != prost1.end()){
  48. ans.num++;
  49. ans.sum += temp;
  50. //cout << temp << endl;
  51. }
  52. }
  53. temp = a[i][j];
  54. for (int ii = 1; j + ii < m && ii<= 6; ii++){
  55. temp = temp * 10 + a[i][j + ii];
  56. if (prost1.find(temp) != prost1.end()){
  57. ans.num++;
  58. ans.sum += temp;
  59. //cout << temp << endl;
  60. }
  61. }
  62. temp = a[i][j];
  63. for (int ii = 1; (j + ii < m) && (ii + i < n) && ii <= 6; ii++){
  64. temp = temp * 10 + a[i + ii][j + ii];
  65. if (prost1.find(temp) != prost1.end()){
  66. ans.num++;
  67. ans.sum += temp;
  68. //cout << temp << endl;
  69. }
  70. }
  71. temp = 0;
  72. }
  73. cout << ans.num << " " << ans.sum << endl;
  74. return 0;
  75. }
  76.  
  77. /*
  78. 2 2
  79. 1 3
  80. 3 2
  81. */
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement