5.27每日一题题解

Celex Update

涉及知识点:

  • 思维

solution:

  • 我们通过自己画图发现
  • $第一种情况我们发现如果两个坐标的X或者Y在相同 $
  • (第二种情况,从(1,1)到(3,3)一共有五个不同的和,从(1,1)到(4,4)一共有十个不同的和,呈现一个田字)
  • (第三种情况,从(1,1)到(2,4)一共有四个不同的和,从(1,1)到(2,3)有三个不同的和,呈现一个日字)
  • (之后我们发现本题一共就这三种情况,接下来的就是对这三种情况就行实现)
  • (经过我们多举几个例子,我们发现三种情况符合(X2-X1)*(Y2-Y1)+1)

std:

#include <bits/stdc++.h>

using namespace std;

typedef  long long ll;
typedef pair<int,pair<int,int>> PII; 

const int N = 1010;




int main()
{
      ll n , x1,x2,y1,y2 ;
      cin>>n;
      while(n--){
      cin >> x1>>y1>>x2>>y2;
      cout<<(x2-x1)*(y2-y1)+1<<endl;

    }
    return 0;
}
原文地址:https://www.cnblogs.com/QFNU-ACM/p/12975763.html