acgo题库
  • 首页
  • 题库
  • 学习
  • 天梯
  • 备赛

    竞赛

    • CSP-J/S
    • 蓝桥杯

    考级

    • GESP
    • CPA
    • 电子学会考级
  • 资讯
  • 竞赛
  • 讨论
  • 团队
  • 商城
登录
注册
题目详情提交记录(0)
  • 纯前后缀方法

    一次前缀和,一次后缀最小值

    userId_undefined
    AK之力
    时空双修者8月全勤卷王出道萌新快乐小狗多键裁决者递归·套娃学徒
    13阅读
    5回复
    0点赞
  • #include <iostream>

    #include <iostream> using namespace std; const int mn = 1e5+9; typedef long long ll; ll a[mn], d[mn], p[mn]; double sum[mn], maxx = 0; // 显式初始化更保险 int main(){ int n; cin >> n; for(int i=1;i<=n;i++){ cin >> a[i]; d[i] = d[i-1]+a[i]; } p[n] = a[n]; for(int i=n-1;i>=1;i--){ p[i] = min(p[i+1], a[i]); } for(int i=1;i<=n-2;i++){ ll ans = d[n]-d[i]; ans -= p[i+1]; sum[i] = ans1.0/(n-i-1); maxx = max(maxx, ans1.0/(n-i-1)); } for(int i=1;i<=n-2;i++){ if(sum[i]==maxx) cout << i << "\n"; } return 0; }

    userId_undefined
    ༺ཌༀ༒剑起风止༒ༀ༻
    秩序白银递归·套娃学徒模拟·模拟练习生贪心·贪心尝试者快乐小狗枚举·枚举小能手
    1阅读
    0回复
    0点赞
暂无数据

提交答案之后,这里将显示提交结果~

首页