B
思路:结论题,如果点是奇数,这个点只能为1
否则等于中间最短点之间的差值+1
#include<stdio.h> #include<math.h> #include<string.h> #include<ctype.h> #include<iostream> #include<algorithm> #include<vector> typedef long long ll; using namespace std; inline void solve(){ int len;cin>>len; vector<ll> a(len+3),b(len+3); for(int i=0;i<len;i++) cin>>a[i]>>b[i]; sort(a.begin(),a.begin()+len); sort(b.begin(),b.begin()+len); if(len%2==1){ cout<<"1\n";return; } int l=(len-1)/2,r=len/2; cout<<(a[r]-a[l]+1)*(b[r]-b[l]+1)<<endl; } int main() { std::ios::sync_with_stdio(false); std::cin.tie(0),std::cout.tie(0); int sum;cin>>sum; while(sum--){ solve(); } }
CD待补充