再见,腾讯宣布即将关停这些游戏!

文摘   2024-12-10 14:08   湖北  
这是苍何的第 250 篇原创!

大家好,我是苍何。

这段时间,互联网大厂们都在各种降本增效,腾讯也不例外,这两年关停了不少的 APP 和小程序。

即使在腾讯内部很赚钱的游戏业务,也面临「不赚钱,就关停」的命运。

这不,近日,腾讯官方发布重要公告,宣布旗下游戏《白夜极光》将终止其在中国大陆区域的服务运营

公告显示,游戏将于 2025 年 1 月 24 日上午 12 点,正式停止在中国大陆地区的运营

具体安排如下:

① 2024年11月25日上午10点00分,关闭游戏充值功能。
 ② 2024年11月25日晚上24点00分,停服2小时关闭游戏注册,开服后,历史已注册的用户可正常登录。
③ 2025年01月24日上午12点00分,正式停止游戏运营,包括但不限于关闭游戏下载渠道、关闭游戏服务器、关闭官网与客服服务等。

当然了,腾讯也制定了相应的补偿方案,允许玩家在关停之前领取其他热门游戏的礼包,如《王者荣耀》、《和平精英》等。

但再多的补偿也很难挽回玩家们失望的心,就好比我用心养了一只狗,你突然给炖了吃了,然后说赔偿我其他宠物猫代金券,但我的狗已经不会再有了。

《白夜极光》是一款二次元手游,这款游戏火于日本,并在 2023 年 6 月由腾讯代理全新运营,至今仅运营了一年多时间,就要下线了。

除此,另外一款由腾讯代理的游戏《黑色沙漠》也传出停运消息,官方说法是,因与游戏开发商的代理合约即将期满,《黑色沙漠》手游将终止其大陆地区的运营服务

宣布将于 2025 年 1 月 27 日 11 点正式停止《黑色沙漠》手游在中国大陆地区的运营。

讲真,黑沙停运有些可惜,

在之前,腾讯就宣布,任天堂国行Switch将于2026年3月31日起至2026年5月15日逐步停止Nintendo e商店和其他网络相关运营服务

有人就得出一个结论,要玩就玩热门游戏吧,比如王者啊,lol 啊,不然你充了钱,哪天说停就停了,最难受的是,之前的一切都白费。

讲到游戏,我仿佛有一个世纪没玩了,你玩过腾讯的什么游戏呢?今日互动话题:说出你最喜欢的一款游戏

我会选出热门留言,被选中的幸运儿将会接受来自苍何的大礼包。

ps:以后文末抽奖统一改为今日互动话题,形式暂定为根据当日指定话题,选出热门留言。

我觉得是一件挺有意义的事情,每日一个话题,让我们彼此链接的更深,也让大家多发声,不然光苍何天天 BB,多孤独呀。😂

...

回归主题。

今天来一道简单面试算法题,给枯燥的牛马生活加加油😂。

题目描述

平台:LeetCode

题号:70

题目名称:爬楼梯

描述:
假设你正在爬楼梯。需要 n 阶才能到达楼顶。
每次你可以爬 1 阶或 2 阶。你有多少种不同的方法可以爬到楼顶呢?

示例 1
输入:n = 2
输出:2
解释:有两种方法可以爬到楼顶:

  1. 1 阶 + 1 阶

  2. 2 阶

示例 2
输入:n = 3
输出:3
解释:有三种方法可以爬到楼顶:

  1. 1 阶 + 1 阶 + 1 阶

  2. 1 阶 + 2 阶

  3. 2 阶 + 1 阶

提示

  • 1≤n≤451 \leq n \leq 45


解题思路

这道题可以用动态规划来解决,类似于斐波那契数列的问题。

  1. 定义状态:

  • dp[i] 表示到达第 ii 阶的方法数。

  • 状态转移方程:

    • 到达第 ii 阶可以从第 i−1i-1 阶爬 1 阶,或者从第 i−2i-2 阶爬 2 阶,因此:dp[i]=dp[i−1]+dp[i−2]dp[i] = dp[i-1] + dp[i-2]

  • 初始化:

    • dp[1]=1dp[1] = 1:到第 1 阶只有 1 种方法。

    • dp[2]=2dp[2] = 2:到第 2 阶有 2 种方法(1+1 或 2)。

  • 返回结果:

    • 最后返回 dp[n] 即可。


    代码实现

    Java 实现

    public class ClimbingStairs {
    public int climbStairs(int n) {
    if (n <= 2) return n; // 边界条件
    int[] dp = new int[n + 1]; // 创建数组,存储每阶的方法数
    dp[1] = 1;
    dp[2] = 2;
    for (int i = 3; i <= n; i++) {
    dp[i] = dp[i - 1] + dp[i - 2]; // 状态转移方程
    }
    return dp[n]; // 返回到第 n 阶的方法数
    }
    }

    C++ 实现

    #include <vector>
    using namespace std;

    class Solution {
    public:
    int climbStairs(int n) {
    if (n <= 2) return n; // 边界条件
    vector<int> dp(n + 1); // 创建数组,存储每阶的方法数
    dp[1] = 1;
    dp[2] = 2;
    for (int i = 3; i <= n; i++) {
    dp[i] = dp[i - 1] + dp[i - 2]; // 状态转移方程
    }
    return dp[n]; // 返回到第 n 阶的方法数
    }
    };

    Python 实现

    class Solution:
    def climbStairs(self, n: int) -> int:
    if n <= 2:
    return n # 边界条件
    dp = [0] * (n + 1) # 创建数组,存储每阶的方法数
    dp[1], dp[2] = 1, 2
    for i in range(3, n + 1):
    dp[i] = dp[i - 1] + dp[i - 2] # 状态转移方程
    return dp[n] # 返回到第 n 阶的方法数

    优化方法

    动态规划的解法中,dp[i] 只依赖于 dp[i-1]dp[i-2],因此可以用两个变量代替数组,优化空间复杂度至 O(1)O(1)。

    优化后的代码

    Java

    public class ClimbingStairs {
    public int climbStairs(int n) {
    if (n <= 2) return n; // 边界条件
    int prev = 1, curr = 2; // 使用两个变量
    for (int i = 3; i <= n; i++) {
    int temp = curr;
    curr = curr + prev; // 更新当前阶数的方法数
    prev = temp; // 更新上一阶数的方法数
    }
    return curr; // 返回第 n 阶的方法数
    }
    }

    C++

    class Solution {
    public:
    int climbStairs(int n) {
    if (n <= 2) return n; // 边界条件
    int prev = 1, curr = 2; // 使用两个变量
    for (int i = 3; i <= n; i++) {
    int temp = curr;
    curr = curr + prev; // 更新当前阶数的方法数
    prev = temp; // 更新上一阶数的方法数
    }
    return curr; // 返回第 n 阶的方法数
    }
    };

    Python

    class Solution:
    def climbStairs(self, n: int) -> int:
    if n <= 2:
    return n # 边界条件
    prev, curr = 1, 2 # 使用两个变量
    for i in range(3, n + 1):
    prev, curr = curr, curr + prev # 更新当前和上一阶数的方法数
    return curr # 返回第 n 阶的方法数

    ending

    你好呀,我是苍何。是一个每天都在给自家仙人掌讲哲学的执着青年,我活在世上,无非想要明白些道理,遇见些有趣的事。倘能如我所愿,我的一生就算成功。共勉 💪

    点击关注下方账号,你将感受到一个朋克的灵魂,且每篇文章都有惊喜。

    感谢大家一直以来的阅读、在看和转发,我会把流量主收益都用来发红包,大家可在每一篇文章下留言参与活动,每一篇文章会给到一个不同的互动话题,对应的话题都是独立的,此篇互动话题为【说出你最喜欢的一款游戏】。截止时间统一为发文后一个星期。

    【我爱这个魔幻的世界】

    苍何
    独立开发者,专注于Java企业级开发,AI 工具提效。偶尔闪光、经常表达、总是真诚。
     最新文章