• 牛客网 哈尔滨理工大学第七届程序设计竞赛决赛(网络赛-低年级组)求最大值


    题目描述

    给出一个序列,你的任务是求序列中 (a[j]-a[i])/(j-i)【1<=i<j<=n】的最大值

    输入描述:

    本题包含多组输入,每组输入第一行一个数字n,表示序列的长度。
    然后接下来一行输入n个数,表示原先序列的样子。
    数据范围:
    3<=n<=200000
    -1000000000<=a[i]<=1000000000

    输出描述:

    每组数据输出一行一个浮点数,保留两位小数,表示所求的最大值。
    示例1

    输入

    5
    2 4 6 8 10

    输出

    2.00

    备注:

    输入只有整形。

    分析:对于这个数组里的数,我们可以将它们看作点,把下标看成横坐标,值看成纵坐标,这样的话,问题就转化为了两点斜率最大
    那么斜率最大的一定能对应相邻的两个点。因为如果不相邻的话,设这两点斜率为k 这两个点之间其他点的连线斜率必然存在>=k

    #include <cstdio>
    #include <iostream>
    #include <algorithm>
    #include <queue>
    #include <cstring>
    #include <cstdio>
    using namespace std;
    typedef long long ll;
    #define  INF 0x3f3f3f3f
    const  int MAXN=200100;
    double a[MAXN];
    double maxx;
    int main()
    {
          int n;
          while(scanf("%d",&n)!=EOF)
          {
              maxx=-INF;
               for(int i=0;i<n;i++)
               scanf("%lf",&a[i]);
              for(int i=1;i<n;i++)
               maxx=max(a[i]-a[i-1],maxx);
              printf("%.2f
    ",maxx);
          }
        return 0;
    }
  • 相关阅读:
    python Database Poll for SQL SERVER
    SQLAlchemy表操作和增删改查
    flask动态url规则
    flask配置管理
    一个Flask运行分析
    Function Set in OPEN CASCADE
    Happy New Year 2016
    Apply Newton Method to Find Extrema in OPEN CASCADE
    OPEN CASCADE Multiple Variable Function
    OPEN CASCADE Gauss Least Square
  • 原文地址:https://www.cnblogs.com/a249189046/p/8017839.html
Copyright © 2020-2023  润新知