• cf500-3,不能很好的理解


     1 //Codeforces Round #500 (Div. 2) [based on EJOI]C. Photo of The Sky 
     2 //解决用一个最小矩形,把所给的不定点围起来
     3 //点的横纵坐标都是不确定的,尽量让这些点的横坐标连着最近,纵坐标连着最近,这是决策
     4 //但这类题记住, 首先把所有数升排序,然后,用最大和最小值  最为最左边和最右边的横坐标
     5 // 之后再筛选一个最小的高度 
     6 #include<bits/stdc++.h>
     7 #define ll long long 
     8 using namespace std;
     9 const int maxn=1e6+10;
    10 ll a[maxn];
    11 int main(){
    12     int n;
    13     ll res;
    14     cin>>n;
    15     for(int i=0;i<2*n;i++){
    16         scanf("%lld",&a[i]);
    17     }
    18     sort(a,a+2*n);
    19 
    20     res=(a[2*n-1]-a[n])*(a[n-1]-a[0]); //暂时给值 
    21     for(int i=1;i<n;i++){
    22         res=min(res, (a[2*n-1]-a[0])*(a[n-1+i]-a[i]) ); //已经横向最长了,寻找纵向最短长度
    23     }
    24     cout<<res<<endl;
    25 }
  • 相关阅读:
    缓存
    json集合取值
    四个div块点击某个突出显示
    table获取某一列的td
    鼠标悬浮tr追加背景颜色
    jquery弹出层
    面试题
    表单校验及正则表达式
    jquery操作DOM
    jquery的事件与动画
  • 原文地址:https://www.cnblogs.com/3532gll/p/9396694.html
Copyright © 2020-2023  润新知