NC14268. Distance
描述
输入描述
第一行,一个正整数n,为元素个数。
第二行,n个正整数Ai为这n个元素的特征值。
输出描述
一行,一个正整数表示最大距离。long long请用lld
示例1
输入:
2 4 3
输出:
10
C++(clang++ 11.0.1) 解法, 执行用时: 57ms, 内存消耗: 1972K, 提交时间: 2022-10-12 14:28:17
#include<bits/stdc++.h> using namespace std; typedef long long ll; int main() { ll n,a[100010],b[100010],ans,x; cin>>n; for(ll i=1;i<=n;i++) { cin>>x; a[i]=i*i+x*x,b[i]=i*i-x*x; } sort(a+1,a+n+1); sort(b+1,b+n+1); ans=max(a[n]-a[1],b[n]-b[1]); cout<<ans; }
Python3(3.5.2) 解法, 执行用时: 629ms, 内存消耗: 5876K, 提交时间: 2017-11-02 16:00:50
n=int(input()) x=0 ans=0 m1=0 m2=0 for i in range(1,n+1): x=int(input()) if i>1: ans=max(ans,x*x+i*i+m1) ans=max(ans,-x*x+i*i+m2) m1=max(m1,-x*x-i*i) m2=max(m2,x*x-i*i) else: m1=-x*x-i*i m2=x*x-i*i print(ans)