[牛客复盘] 牛客周赛 Round 9 20230827

[牛客复盘] 牛客周赛 Round 9 20230827

    • 总结
    • 小美的外卖订单编号
      • 1. 题目描述
      • 2. 思路分析
      • 3. 代码实现
    • 小美的加法
      • 1. 题目描述
      • 2. 思路分析
      • 3. 代码实现
    • 小美的01串翻转
      • 1. 题目描述
      • 2. 思路分析
      • 3. 代码实现
    • 小美的数组操作
      • 1. 题目描述
      • 2. 思路分析
      • 3. 代码实现
    • 六、参考链接

总结

  • 又是笨比的一周,只做出1题。
  • T1 数学
  • T2 前后缀分解
  • T3 dp
  • T4 贪心平均数
  • 在这里插入图片描述

小美的外卖订单编号

链接: 小美的外卖订单编号

1. 题目描述

在这里插入图片描述

2. 思路分析

  • 由于数据是1开始的,先减1,取模后再+1

3. 代码实现

def solve():m, x = RI()x = (x - 1) % mprint(x + 1)

小美的加法

链接: 小美的加法

1. 题目描述

在这里插入图片描述

2. 思路分析

  • 一个傻的做法是前后缀分解。
  • 其实扫一遍,枚举两个数,s减去即可。

3. 代码实现

#       ms
def solve():n, = RI()a = RILST()s = sum(a)ans = 0for i in range(n - 1):ans = max(ans, s - a[i] - a[i + 1] + a[i] * a[i + 1])print(ans)#       ms
def solve1():n, = RI()a = RILST()p = [0] + list(accumulate(a))s = list(accumulate(a[::-1]))[::-1] + [0]ans = p[-1]for i in range(n - 1):ans = max(ans, p[i] + a[i] * a[i + 1] + s[i + 2])print(ans)

小美的01串翻转

链接: 小美的01串翻转

1. 题目描述

在这里插入图片描述

2. 思路分析

  • 看数据可以n方。
  • 那么枚举每个子段,dp即可。

3. 代码实现

#       ms
def solve():s, = RS()n = len(s)ans = 0for l in range(n):x = y = 0if s[l] == '1':x = 1else:y = 1for r in range(l + 1, n):if s[r] == '1':x, y = y + 1, xelse:x, y = y, x + 1ans += min(x, y)print(ans)#       ms
def solve1():s, = RS()n = len(s)f = [[0, 0] for _ in range(n)]ans = 0for l in range(n):f[l] = [0, 0]f[l][int(s[l]) ^ 1] = 1for r in range(l + 1, n):if s[r] == '1':f[r] = [f[r - 1][1] + 1, f[r - 1][0]]else:f[r] = [f[r - 1][1], f[r - 1][0] + 1]ans += min(f[r])print(ans)

小美的数组操作

链接: 小美的数组操作

1. 题目描述

在这里插入图片描述

2. 思路分析

  • 容易想到,要使众数最多,那么数量不是n就是n-1。
  • 当sum能整除n时,一定可以使所有数变成同一个数,就是平均数,直接计算即可。
  • 否则,可以尝试把其中n-1个变成一样的,另一个数承载垃圾操作。那么这个数一定是最大的数或者最小的数。
    • 那目标数字应该是这n-1个数的平均数,步数才是最小的。注意这个数可能不是整数,s/t,s/t+1都试试。

3. 代码实现

def f(a, t):x = y = 0for v in a:if v > t:x += v - telse:y += t - vreturn max(x, y)#       ms
def solve():n, = RI()a = RILST()s = sum(a)if s % n == 0:t = s // nans = 0for v in a:ans += max(0, v - t)print(ans)else:a.sort()t = (s - a[-1]) // (n - 1)ans = min(f(a[:-1], t), f(a[:-1], t + 1))t = (s - a[0]) // (n - 1)ans = min(ans, f(a[1:], t), f(a[1:], t + 1))print(ans)

六、参考链接

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/1621638.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

数据分析基础-数据可视化学习笔记03-可视化的符号与表示-图形符号学

概念 图型符号学(Cartographic Symbolization)是地图学领域中的一个重要概念,涉及到如何使用不同的符号、颜色、图案和标记来在地图上表示地理信息和数据。图型符号学旨在传达地理信息,使得地图能够清晰、有效地传达各种空间数据…

DDT数据驱动测试

简单介绍 ​ DDT(Date Driver Test),所谓数据驱动测试,简单来说就是由数据的改变从而驱动自动化测试的执行,最终引起测试结果的改变。通过使用数据驱动测试的方法,可以在需要验证多组数据测试场景中&#…

【80天学习完《深入理解计算机系统》】第十一天 3.5 过程(函数调用)

专注 效率 记忆 预习 笔记 复习 做题 欢迎观看我的博客,如有问题交流,欢迎评论区留言,一定尽快回复!(大家可以去看我的专栏,是所有文章的目录)   文章字体风格: 红色文字表示&#…

模板(二)

目录 非类型模板参数 引入 分类 使用typename的特殊情况 注意点 模板特化 引入 介绍 函数模板特化 使用 ​编辑 优点 类模板特化 全特化 偏特化 部分特化 特殊的特化 使用 分离编译 介绍 问题代码示例 代码 说明 预处理 编译 链接 类模板实例化…

期货量化软件:衡量指标信息

机器学习依靠数据训练来学习市场的一般行为,最终做出相当准确的预测。 所选学习算法必须遍历精心挑选的样本,以便提取有意义的信息。 许多人未能成功应用这些精密工具的原因是,大多数有意义的信息都隐藏在嘈杂的数据当中。 对于许多策略开发人…

期货量化交易软软件:怎样开发可以获利的交易策略

简介 通过技术分析开发成功交易策略的过程可以分为以下几步: ​ 编辑 添加图片注释,不超过 140 字(可选) 在某个资产价格图表窗口上附加几个技术指标, 并识别出其中信号指标与市场关联的模式. 把上一步相关性分析取得的数据进行公式化. …

免费期货量化交易软件:种群优化算法引力搜索算法(GSA)

1. 概述 ​​​​​​​ 引力搜索算法(GSA)是由 E. Rashedi 提出的,用于解决优化问题,特别是非线性问题,它遵循牛顿的万有引力定律原理。 在所提议的算法中,粒子被视为物体,并在考虑其质量的情…

免费_期货量化软件:神经网络变得轻松-网络训练和测试

1. 定义问题 在开始创建智能交易系统之前,必须定义将为新神经网络设定的目标。 当然,金融市场上所有智能交易系统的共同目标是获利。 然而,此目的太笼统宽泛。 赫兹期货量化软件需要为神经网络指定更具体的任务。 甚至,我们需要了…

免费期货量化软件:多层感知器和反向传播算法

免费期货量化软件:多层感知器和反向传播算法 什么是 TensorFlow? TensorFlow 是一个快速数值处理的开源函数库。 它是由 Google 依照 Apache 开源许可下创建、支持和发布。 该 API 是为 Python 语言设计的,尽管它也可以访问基本的 C API。…

免费期货量化软件策略:艾伦·安德鲁斯和他的时间序列分析技术

我相信,所有现代图表分析应用程序都会包括 安德鲁草叉。 在高级系统中,在原本的三条主线中会添加一些额外的线(例如,为了更方便,赫兹期货量化中加入了“侧边”等级)。 一些开发人员在他们的程序中包括“希夫…

免费期货量化软件:数据科学与机器学习——线性回归

它是一个跨学科领域,它运用科学方法、流程、算法、系统,从嘈杂、结构化和非结构化数据中提取出知识和见解,并将这些知识和可操作的见解在广泛的应用领域加以运用。 数据科学家则是创建编程代码、并将其与统计学相结合,从中挖掘创…

免费期货量化软件策略:在一张图表上的多个指标为用户开发

通常,当我们开始实现一个新系统时,我们并不真正知道我们如何对其进行改进;故此,我们应该始终启动一个新项目,并着眼于未来进行改进。 这对那些刚开始的人来说非常重要:持续地规划一些事情,想象未…

免费期货量化软件策略您能用移动平均线做什么呢?

我们将学习布林带,它测量数据在其平均值附近的离散度。该指标由约翰博林格(John Bollinger)创造。 它由围绕 20 天移动平均线的两条波段构成,以测量数据(价格)在其均值(20 天移动平均线&#xf…

免费期货量化软件策略:从头开始开发智能交易系统(第 25 部分)

概述 在上一篇文章提供系统健壮性 (I)中,赫兹期货量化已经看到了如何更改 EA 的某些部分,从而令系统更加可靠和健壮。 这只是针对兹期货量化将要在本文中所做之事的介绍。 请忘记您所知道的、计划的、或希望的一切。 这里最困难…

免费期货量化软件:学习如何设计一款布林带Bollinger Bands交易系统

我们将学习布林带,它测量数据在其平均值附近的离散度。该指标由约翰博林格(John Bollinger)创造。 它由围绕 20 天移动平均线的两条波段构成,以测量数据(价格)在其均值(20 天移动平均线&#xf…

免费期货量化软件:针对交易的组合数学和概率论曲线分析

赫兹期货量化将继续为构建多重状态、可扩展的交易系统奠定基础。 在本文的框架内,我想为您展示如何利用前几篇文章中的发展成果,来进一步阐述交易过程的广泛可能性。 这有助于从这些层面评估策略,来弥补其它分析方法未能涵盖的地方。 在本文中…

免费期货量化软件:从头开始开发智能交易系统概念上的飞跃

有时,在开发一些项目时,我们也许会发现新的思路和新的可能特性,这些特性能够派上用场,并为我们正在创建的系统提供极大的改进。 但问题出来了:实现新功能的最简单途径是什么? 问题在于,有时我们…

Bugku 密室逃脱 WP

一、打开题目 二、解压文件夹,查看文件和压缩包,发现压缩包进行了加密 三、查看剧本,发现摩斯密码,并解析得到电脑密码:xjpc 四、输入电脑密码得到一张图片和一个压缩包,查看图片发现图片位置发生错误&a…

如何不下载软件来制作自己的网站

注意:本文使用Windows操作系统。如果你计算机的操作系统不是Windows,这篇文章对于你来说没有丝毫意义。 我们前几天介绍了如何建立一个自己的网站,虽然也有用,但是下载了许多软件。Windows系统就自带了一个名为IIS的软件&#xff…