fork download
  1. #include <iostream>
  2. #include <math.h>
  3. using namespace std;
  4. // int **create(int N);
  5. // void del(int **matrix, int N);
  6.  
  7. int trusty(int first, int second){
  8. if(min(first, second) == first){
  9. return 1;
  10. }
  11. return 0;
  12. }
  13.  
  14. int fun(int first[4], int second[4], int sum=0){
  15. sum = -((second[2] - second[0])*(first[3]-first[1]));
  16. return sum;
  17. }
  18.  
  19. int main(){
  20. int N=2;
  21. // cin >> N;
  22. int matrix[2][4] = {
  23. {1, 2, 6, 3},{2, 1, 5, 4}
  24. };
  25.  
  26. int sup=0;
  27. // int **matrix = create(N);
  28. // for(int i=0; i<N; i++){
  29. // for(int j=0; j<4; j++){
  30. // cin >> matrix[i][j];
  31. // }
  32. // }
  33.  
  34. for(int i=0; i<N; i++){
  35. sup += (matrix[i][2]-matrix[i][0]) * (matrix[i][3]-matrix[i][1]);
  36. // cout << sup << endl;
  37. if(i>0){
  38. for(int j=0; j<i; j++){
  39. if((trusty(matrix[i][1], matrix[j][1]) and trusty(matrix[j][3], matrix[i][3]))){
  40. if(!(trusty(matrix[i][0], matrix[j][0]) and trusty(matrix[j][2], matrix[i][2]))){
  41. if(trusty(matrix[j][0], matrix[i][0]) and trusty(matrix[i][2], matrix[j][2])){
  42. cout <<"init " << sup << endl;
  43. if(min(matrix[i][0], matrix[j][0]) == matrix[j][0]){
  44. sup += fun(matrix[j], matrix[i]);
  45. }
  46. else{
  47. sup += fun(matrix[i], matrix[j]);
  48. }
  49.  
  50. }
  51. if(trusty(matrix[j][0], matrix[i][0]) and trusty(matrix[j][2], matrix[i][2])){
  52.  
  53. }
  54. }
  55.  
  56.  
  57. if(trusty(matrix[i][0], matrix[j][0]) and trusty(matrix[j][2], matrix[i][2])){
  58. if((trusty(matrix[i][0], matrix[j][0]) and trusty(matrix[j][2], matrix[i][2]))){
  59. sup -= ((matrix[i][2]-matrix[i][0]) * (matrix[j][3]- matrix[j][1]));
  60. cout <<"chek " << sup << endl;
  61. }
  62. }
  63. }
  64. }
  65. }
  66. }
  67. cout << sup<< endl;
  68. // del(matrix, N);
  69. return 0;
  70. }
Success #stdin #stdout 0.01s 5300KB
stdin
Standard input is empty
stdout
init   14
11