Advertisement
Guest User

Untitled

a guest
Dec 15th, 2019
88
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.06 KB | None | 0 0
  1. #include <fstream>
  2. #include <algorithm>
  3.  
  4. using namespace std;
  5.  
  6. ifstream f("intrus.in");
  7. ofstream g("intrus.out");
  8.  
  9. struct suspect
  10. {
  11. int lin, col, per, mv;
  12. };
  13. suspect v[100001];
  14.  
  15. int p,n,m,d;
  16. int i,j,ii,jj;
  17. int a[1001][1001];
  18. int vip[1001][1001];
  19. int fr[1000001];
  20. int nrs;
  21. int sus,jos,st,dr;
  22.  
  23. bool c[1000001];
  24.  
  25. bool cmp(suspect a, suspect b)
  26. {
  27. if (a.per>b.per)
  28. return 1;
  29. if (a.per==b.per && a.mv>b.mv)
  30. return 1;
  31. if (a.per==b.per && a.mv==b.mv && a.lin<b.lin)
  32. return 1;
  33. if (a.per==b.per && a.mv==b.mv && a.lin==b.lin && a.col<b.col)
  34. return 1;
  35. return 0;
  36. }
  37.  
  38. int main()
  39. {
  40. c[0]=c[1]=1;
  41. for (i=2;i<=1000000;i++)
  42. if (c[i]==0)
  43. for (j=i*2;j<=1000000;j+=i)
  44. c[j]=1;
  45.  
  46. f>>p;
  47. f>>n>>m>>d;
  48. d=(d-1)/2;
  49. for (i=1;i<=n;i++)
  50. for (j=1;j<=m;j++)
  51. {
  52. f>>a[i][j];
  53. if (a[i][j])
  54. fr[a[i][j]]++;
  55. }
  56.  
  57. if (p==1)
  58. {
  59. for (i=1;i<=n;i++)
  60. for (j=1;j<=m;j++)
  61. nrs+=(fr[a[i][j]]>1);
  62. g<<nrs;
  63. }
  64. else
  65. {
  66. for (i=1;i<=n;i++)
  67. for (j=1;j<=m;j++)
  68. if (fr[a[i][j]]>1)
  69. {
  70. nrs++;
  71. v[nrs].lin=i, v[nrs].col=j;
  72. sus=max(0, i-d);
  73. st=max(0, j-d);
  74. jos=min(n, i+d);
  75. dr=min(m, j+d);
  76.  
  77. for (ii=sus;ii<=jos;ii++)
  78. for (jj=st;jj<=dr;jj++)
  79. if (c[a[ii][jj]]==0)
  80. {
  81. v[nrs].per++;
  82. v[nrs].mv=max(v[nrs].mv, a[ii][jj]);
  83. }
  84. }
  85.  
  86.  
  87. if (nrs)
  88. {
  89. sort(v+1,v+nrs+1,cmp);
  90. for (i=1;i<=nrs;i++)
  91. g<<a[v[i].lin][v[i].col]<<" "<<v[i].lin<<" "<<v[i].col<<"\n";
  92. }
  93. else
  94. g<<-1;
  95. }
  96.  
  97. return 0;
  98. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement