Advertisement
a53

raza1

a53
May 5th, 2022
117
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.72 KB | None | 0 0
  1. #include<fstream>
  2. using namespace std;
  3. ifstream fin("raza.in");
  4. ofstream fout("raza.out");
  5.  
  6. int f[120002],i;
  7. int m,s,cer1,diag,l,c,r,op;
  8.  
  9. int main()
  10. {
  11. fin>>op;
  12. fin>>m>>s;
  13. cer1=0;
  14. while(m)
  15. {
  16. diag=0;
  17. m--;
  18. fin>>l>>c>>r;
  19. r--;
  20. ///r-DIMINUEZ
  21. ///2 colturi??
  22. if (c==l)
  23. {
  24. ///perioada este 0, 2r, 4r, 6r.
  25. diag++;
  26. for(i=0;i<=s/r;i=i+2)
  27. f[1+i*r]++;
  28. }
  29. ///1 colt dr sus?
  30. if (c+r==l)
  31. {
  32. diag++;
  33. ///perioada este 1r, 5r, 9r,...
  34. for(i=1;i<=s/r;i=i+4)
  35. f[1+i*r]++;
  36. }
  37. ///1 colt st jos
  38. if (l+r==c)
  39. {
  40. diag++;
  41. ///perioada 3r, 7r, 11r
  42. for(i=3;i<=s/r;i=i+4)
  43. f[1+i*r]++;
  44. }
  45. ///2laturi NE
  46. if (c<l and l<c+r )
  47. {
  48. diag++;
  49. ///perioada (l-c)+4r, +8r, ...
  50. for(i=0;i<=s/r;i=i+4)
  51. f[1+(l-c)+i*r]++;
  52. ///perioada (2r-(l-c))+4r, +8r
  53. for(i=2;i<=s/r;i=i+4)
  54. f[1+i*r-(l-c)]++;
  55. }
  56. ///2laturi SV
  57. if (l<c and c<l+r)
  58. {
  59. diag++;
  60. ///perioada
  61. for(i=2;i<=s/r;i=i+4)
  62. f[1+i*r+c-l]++;
  63. ///perioada
  64. for(i=4;i<=s/r;i=i+4)
  65. f[1+i*r-(c-l)]++;
  66. }
  67. if (diag)
  68. cer1++;
  69. }
  70. if (op==1)
  71. fout<<cer1<<'\n';
  72. else{
  73. int maxi=0, timp=0;
  74. for(i=0;i<=s;i++)
  75. if (f[i]>maxi)
  76. maxi=f[i], timp=i;
  77. fout<<maxi<<' '<<timp<<'\n';
  78. }
  79. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement