ProgMe

Codeforces_forever Round #1 (Div3) A

Apr 25th, 2020
150
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.55 KB | None | 0 0
  1. //решение
  2. Можно заметить, что нет смысла располагать окно так, чтобы оно не касалось битого пикселя — в таком случае его можно расширить.
  3.  
  4. Есть четыре возможных способа расположить окно вплотную к битому пикселю — можно расположить его под, над, слева или справа от битого пикселя.
  5.  
  6. если расположить окно слева от пикселя, максимальный размер будет равен x⋅b;
  7. если расположить окно слева от пикселя, максимальный размер будет равен (a−1−x)⋅b;
  8. если расположить окно слева от пикселя, максимальный размер будет равен a⋅y;
  9. если расположить окно слева от пикселя, максимальный размер будет равен a⋅(b−1−y).
  10. Эти четыре случая можно объединить одной формулой вида max(max(x,a−1−x)⋅b,a⋅max(y,b−1−y)).
  11. //реализация
  12. #include <iostream>
  13. #include <cmath>
  14. #include <bits/stdc++.h>
  15.  
  16. using namespace std;
  17.  
  18. int main()
  19. {
  20. long long i, j, n;
  21. long long t, inp, sum = 0, a,b,x,y;
  22. cin>>t;
  23. while(t--)
  24. {
  25. cin>>a>>b>>x>>y;
  26. cout<<max(max(x,(a-(x+1)))*b,max(y,(b-(y+1)))*a)<<endl;
  27. }
  28. }
Advertisement
Add Comment
Please, Sign In to add comment