赚他10个亿...

news2024/9/20 7:47:58

体育竞技 & 商业价值

虽然昨天遭受了全球黑一,但四年一度的奥运会还是要关注的。

不知道最近大家是否有关注巴黎奥运会,印象深刻的项目又是哪个?

截止于发稿前,目前「金牌榜」上,中国以微弱优势位于第一(知道我为什么要赶趟聊奥运了吧)。

alt

在中国这 21 枚金牌中,有 2 枚别具意义。

一枚是潘展乐的 100 米自由泳,另一枚是郑钦文的女网。

从竞技体育的角度来说,潘展乐的 100 米自由泳要更胜一筹。

在网球领域,四大满贯才是终极目标,奥运奖牌在 WTA 系统中甚至不算积分,因此早年职业选手对此并不是特别感冒,更多的是为了国家荣誉而战,大赛本身并不能代表世界顶尖水平的较量。

但郑钦文只有 21 岁,未来还有巨大的上升空间,尤其这次半决赛击败的还是曾经在 WTA 中 6 战全败的,目前暂列世界第一的斯瓦泰克。

而 100 米自由泳领域,是公认的破纪录最难的领域,本次潘展乐是以断层领先第二名的优势夺冠,将人类百米水中速度首次拉入 46.5 秒,这里面的竞技意义,是可以并注定要摘入史册的,象征意义好比博尔特首次把人类百米陆地速度拉入 9.6 秒。

再者,潘展乐的金牌还有另外一层精神含义:这是在目前中国游泳队正经历「内部吹哨人」和「1天7检」的极端压力下诞生的。

聊完竞技体育,再聊商业价值。

毫无疑问,郑钦文所能成就的商业价值注定更大,因为她混的是网球圈。

在福布斯女运动员排行榜上,前十里有九名是网球运动员(唯一例外的是谷爱凌):

浅色区:比赛奖金 & 深色区:商业收入
浅色区:比赛奖金 & 深色区:商业收入

上一年郑钦文的年收入约为 5000 万人民币,加上今年的优异成绩,明年进入榜单前十不成问题,再叠加今年才 21 岁,只要职业生涯保持健康,赚他十个亿不成问题。

潘展乐和郑钦文都是顶尖天才运动员,可大胆预测两者将会成为国内超新星体育偶像,而郑钦文甚至能成为世界级体育偶像。

...

回归主题。

来一道和「快手」相关的题目。

题目描述

平台:LeetCode

题号:2760

给你一个下标从 0 开始的整数数组 nums 和一个整数 threshold

请你从 nums 的子数组中找出以下标 l 开头、下标 r 结尾 ( ) 且满足以下条件的最长子数组:

  • nums[l] % 2 == 0
  • 对于范围 内的所有下标 inums[i] % 2 != nums[i + 1] % 2
  • 对于范围 内的所有下标 inums[i] <= threshold

以整数形式返回满足题目要求的最长子数组的长度。

注意:子数组是数组中的一个连续非空元素序列。

示例 1:

输入:nums = [3,2,5,4], threshold = 5

输出:3

解释:在这个示例中,我们选择从 l = 1 开始、到 r = 3 结束的子数组 => [2,5,4] ,满足上述条件。
因此,答案就是这个子数组的长度 3 。可以证明 3 是满足题目要求的最大长度。

示例 2:

输入:nums = [1,2], threshold = 2

输出:1

解释:
在这个示例中,我们选择从 l = 1 开始、到 r = 1 结束的子数组 => [2] 。
该子数组满足上述全部条件。可以证明 1 是满足题目要求的最大长度。

示例 3:

输入:nums = [2,3,4,5], threshold = 4

输出:3

解释:
在这个示例中,我们选择从 l = 0 开始、到 r = 2 结束的子数组 => [2,3,4] 。 
该子数组满足上述全部条件。
因此,答案就是这个子数组的长度 3 。可以证明 3 是满足题目要求的最大长度。

提示:

双指针

整体题意:找 nums 中的最长的子数组 ,对于任意 不超过 threshold,且从 开始按照「先偶后奇」顺序交替。

假设子数组的左端点为 i,且“最远的”合法右端点为 j,那么在 之间的任意右端点 k,即使能够使得 合法,对统计答案而言,也是没有意义的,因为我们求的是最长。

基于此,我们容易想到:「找到所有的合法左端点 i,并统计该合法左端点的最远右端点 j。跳过 之间的点作为左端点的情况,直接从结束位置 j 开始找下一个合法左端点。」

该做法可将朴素的 做法优化至

但,这做法为什么是正确的?

我们只考虑了 中间点作为右端点的情况,那作为左端点呢?为什么跳过 之间的 k 作为左端点,正确性也不受影响?我们不是漏到了某些方案吗?

答案:「是漏掉了,但也只是漏掉了那些必不可能是最长子数组的方案」

alt

具体的,我们重新整理上述的「双指针」做法:

  • 从前往后扫描 nums,变量 i 作为当前子数组左端点,首先确保 i 的合法性(跳过不满足 nums[i] % 2 = 0nums[i] <= threshold 的位置)
  • 随后在固定左端点 i 前提下,找最远的(第一个不满足要求的)右端点 j(值不超过 threshold,且奇偶性与前值交替)
  • 得到当前连续段长度 ,更新 ans,从当前结束位置 j 开始,重复上述过程,直到处理完 nums

Java 代码

class Solution {
    public int longestAlternatingSubarray(int[] nums, int threshold) {
        int n = nums.length, ans = 0, i = 0;
        while (i < n) {
            if ((nums[i] % 2 != 0 || nums[i] > threshold) && ++i >= 0continue;
            int j = i + 1, cur = nums[i] % 2;
            while (j < n) {
                if (nums[j] > threshold || nums[j] % 2 == cur) break;
                cur = nums[j++] % 2;
            }
            ans = Math.max(ans, j - i);
            i = j;
        }
        return ans;
    }
}

C++ 代码:

class Solution {
public:
    int longestAlternatingSubarray(vector<int>& nums, int threshold) {
        int n = nums.size(), ans = 0, i = 0;
        while (i < n) {
            if ((nums[i] % 2 != 0 || nums[i] > threshold) && ++i >= 0continue;
            int j = i + 1, cur = nums[i] % 2;
            while (j < n) {
                if (nums[j] > threshold || nums[j] % 2 == cur) break;
                cur = nums[j++] % 2;
            }
            ans = max(ans, j - i);
            i = j;
        }
        return ans;
    }
};

Python 代码:

class Solution:
    def longestAlternatingSubarray(self, nums: List[int], threshold: int) -> int:
        n, ans, i = len(nums), 00
        while i < n:
            if nums[i] % 2 != 0 or nums[i] > threshold:
                i += 1
                continue
            j, cur = i + 1, nums[i] % 2
            while j < n:
                if nums[j] > threshold or nums[j] % 2 == cur: break
                cur, j = nums[j] % 2, j + 1
            ans = max(ans, j - i)
            i = j
        return ans

TypeScript 代码:

function longestAlternatingSubarray(nums: number[], threshold: number): number {
    let n = nums.length, ans = 0, i = 0
    while (i < n) {
        if ((nums[i] % 2 != 0 || nums[i] > threshold) && ++i >= 0continue;
        let j = i + 1, cur = nums[i] % 2;
        while (j < n) {
            if (nums[j] > threshold || nums[j] % 2 == cur) break;
            cur = nums[j++] % 2;
        }
        ans = Math.max(ans, j - i);
        i = j;
    }
    return ans;
};
  • 时间复杂度:
  • 空间复杂度:

最后

巨划算的 LeetCode 会员优惠通道目前仍可用 ~

使用福利优惠通道 leetcode.cn/premium/?promoChannel=acoier,年度会员 有效期额外增加两个月,季度会员 有效期额外增加两周,更有超大额专属 🧧 和实物 🎁 福利每月发放。

我是宫水三叶,每天都会分享算法知识,并和大家聊聊近期的所见所闻

欢迎关注,明天见。

更多更全更热门的「笔试/面试」相关资料可访问排版精美的 合集新基地 🎉🎉

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

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

相关文章

CDGA/CDGP数据治理证书:含金量高,职场竞争力提升的明智之选

在当今这个数据驱动的时代&#xff0c;数据已成为企业最宝贵的资产之一&#xff0c;而高效、合规的数据治理则是挖掘数据价值、驱动业务增长的关键。随着企业对数据治理重视程度的不断提升&#xff0c;拥有专业数据治理知识和技能的人才变得尤为稀缺。在此背景下&#xff0c;CD…

win10批量修改文件名,记得保存文件

打开需要修改的文件夹新建文本内容如下 DIR . /B>文件列表.csv 并另存为bat文件,注意编码&#xff0c;双击bat文件生成Excel 打开Excel 填写你的文件名至B列&#xff0c;如我需要在文件名前面都加上spi5_公式D1&A1 C列输入"REN "&"""&q…

【C++BFS算法】2059. 转化数字的最小运算数

本文涉及知识点 CBFS算法 LeetCode2059. 转化数字的最小运算数 给你一个下标从 0 开始的整数数组 nums &#xff0c;该数组由 互不相同 的数字组成。另给你两个整数 start 和 goal 。 整数 x 的值最开始设为 start &#xff0c;你打算执行一些运算使 x 转化为 goal 。你可以…

实验8-1-7 数组循环右移

本题要求实现一个对数组进行循环右移的简单函数&#xff1a;一个数组a中存有n&#xff08;>0&#xff09;个整数&#xff0c;将每个整数循环向右移m&#xff08;≥0&#xff09;个位置&#xff0c;即将a中的数据 &#xff08;最后m个数循环移至最前面的m个位置&#xff09;…

CMU15445 (Fall 2023) Project 4 - Concurrency Control 思路分享

文章目录 写在前面Task 1 - Timestamps1.1 Timestamp Allocation1.2 Watermark Task 2 - Storage Format and Sequential Scan2.1 Tuple Reconstruction2.2 Sequential Scan / Tuple Retrieval Task 3 - MVCC Executors3.1 Insert Executor3.2 Commit3.3 Update and Delete Exe…

FreeIPA安装

一、环境准备 主机名IP角色master. bhlu. com192.168.22.10服务端node1. bhlu. com192.168.22.11客户端 两台服务器关闭防火墙和 selinux配置好 yum 源 1.1 配置 chronyd 配置好 chronyd&#xff0c;使用 chronyc source -v 可以验证 # 这里写了一个playbook作为示例了 --…

OpenHarmony网络请求库-axios

简介 Axios &#xff0c;是一个基于 promise 的网络请求库&#xff0c;可以运行 node.js 和浏览器中。本库基于 Axios 原库v1.3.4版本进行适配&#xff0c;使其可以运行在 OpenHarmony&#xff0c;并沿用其现有用法和特性。 http 请求Promise APIrequest 和 response 拦截器转…

Codeforces Round 920 (Div. 3) A~E 题

A. Square 题目链接&#xff1a; Problem - A - Codeforces 思路&#xff1a; 题目比较简单&#xff1a;就是给你一个矩形的四个顶点的坐标&#xff0c;然后让你求矩形的面积&#xff0c;我们知道矩形的面积等于长乘宽&#xff0c;那么&#xff0c;如何就矩形的长和宽&…

ctfhub Bypass disable_function

LD_PRELOAD url 蚁剑连接 选择插件 点击开始 查看到此文件名编辑连接拼接到url后面重新连接 点击开启终端 在终端执行命令 ls / /readfile ShellShock url CTFHub 环境实例 | 提示信息 蚁剑连接 写入shell.php <?phpeval($_REQUEST[ant]);putenv("PHP_test() { :…

ViT论文详解

文章目录 前言一、ViT理论二、模型结构三、实验结果总结 前言 ViT是谷歌团队在2021年3月发表的一篇论文&#xff0c;论文全称是《AN IMAGE IS WORTH 16X16 WORDS:TRANSFORMERS FOR IMAGE RECOGNITION AT SCALE》一张图片分成16x16大小的区域&#xff1a;使用Transformer进行按比…

如何将Python程序打包成exe程序

众所周知,通过python开发的程序要运行,一般需要安装python环境来运行程序文件,那么如何在未安装python环境的电脑上直接运行程序呢?通常采用Pyinstaller来实现的,本文主要对该打包过程进行具体说明。本文重点解决PyQt5在打包时无法正确运行的问题。 一、安装Pyinstaller 安…

Docker常用命令与相关操作(更新中)

Docker介绍 1.什么是Docker Docker是一个开源的应用容器引擎&#xff0c;它是一个是基于Go语言开发的开源项目。使用Docker可以让开发者封装他们的应用以及依赖包到一个可移植的容器中&#xff0c;然后发布到任意的Linux机器上&#xff0c;也可以实现虚拟化。Docker容器完全使…

机房空调远程控制方案

概述 企业和园区都会有电力机房&#xff0c;往往会配备抽风机或者空调设备。特别在南方&#xff0c;空气湿度大时特别需要这些设备。经常有业主反馈&#xff0c;下班后靠人力到现场控制不太方便&#xff0c;24小时开启又浪费资源&#xff0c;而且可能有长期噪声污染。为此&…

Tomato靶机

修改网络模式为NAT 主机发现 arp-scan -l 端口扫描 nmap 192.168.48.147 nmap -sC -sV -O 192.168.48.147 -sC常见漏洞脚本扫描 -sV开放端口服务/版本号 -O操作系统探测 端口利用 访问web服务 目录扫描 dirb http://192.168.48.147 访问 http://192.168.48.147/antibot_im…

盘点4款令人惊艳的视频剪辑工具

在这个短视频盛行的时代&#xff0c;每个人都可以成为视频内容的创作者。但是&#xff0c;在此之前&#xff0c;拥有一款适合自己的剪辑软件十分重要。今天我就来和大家来说一说我自己觉得比较好用的4款剪辑软件。 1、福昕剪辑神器 直达链接&#xff1a;www.pdf365.cn/foxit-c…

如何将iphone照片导入电脑?4种使用的照片导入办法

你是否曾为如何将iPhone上的照片导入电脑而烦恼&#xff1f;是否尝试过多种方法&#xff0c;却总是觉得步骤繁琐、效率低下&#xff1f;不用再为找不到好方法而挠头了&#xff01; 下面分享几种实用的导入办法&#xff0c;让你在短时间内将照片从iPhone照片导入电脑&#xff0…

学习笔记 韩顺平 零基础30天学会Java(2024.8.6)

P471 String对象特性2 数组默认情况下是放到堆里面的 只要调用一个方法就会产生一个新栈&#xff0c;因为是在主方法里创建对象的&#xff0c;所以对象是在栈里面&#xff0c;而str ch这些都应该在堆里面&#xff0c;栈里的对象指向堆中的str ch。这一题很像学C语言的时候遇到的…

红外遥控风扇——arduino

红外遥控风扇——arduino 本节课任务红外遥控红外遥控通信过程红外遥控套件红外遥控接线实现风扇的多种换挡方式用本节课所学的红外遥控&#xff0c;控制RGB彩灯变换颜色&#xff0c;至少配置4种 本节课任务 1、了解红外遥控技术在生活中的运用。 2、学会编程测试红外遥控器的…

nuclei-快速漏洞扫描器【安装使用详解】

★★免责声明★★ 文章中涉及的程序(方法)可能带有攻击性&#xff0c;仅供安全研究与学习之用&#xff0c;读者将信息做其他用途&#xff0c;由Ta承担全部法律及连带责任&#xff0c;文章作者不承担任何法律及连带责任。 1、nuclei介绍 Nuclei是一款基于YAML语法模板的开发的定…