列表

详情


6311. 统计染色格子数

有一个无穷大的二维网格图,一开始所有格子都未染色。给你一个正整数 n ,表示你需要执行以下步骤 n 分钟:

下图分别是 1、2、3 分钟后的网格图。

请你返回 n 分钟之后 被染色的格子 数目。

 

示例 1:

输入:n = 1
输出:1
解释:1 分钟后,只有 1 个蓝色的格子,所以返回 1 。

示例 2:

输入:n = 2
输出:5
解释:2 分钟后,有 4 个在边缘的蓝色格子和 1 个在中间的蓝色格子,所以返回 5 。

 

提示:

原站题解

去查看

上次编辑到这里,代码来自缓存 点击恢复默认模板
class Solution { public: long long coloredCells(int n) { } };

python3 解法, 执行用时: 32 ms, 内存消耗: 14.9 MB, 提交时间: 2023-03-09 14:21:48

class Solution:
    def coloredCells(self, n: int) -> int:
        return 1 + 2 * n * (n - 1)

golang 解法, 执行用时: 0 ms, 内存消耗: 1.9 MB, 提交时间: 2023-03-09 14:21:17

func coloredCells(n int) int64 {
	return 1 + 2*int64(n)*int64(n-1)
}

python3 解法, 执行用时: 428 ms, 内存消耗: 16.1 MB, 提交时间: 2023-03-09 14:18:20

'''
f[1] = 1 * 2 - 1
f[2] = (1 + 3) * 2 - 3
f[3] = (1 + 3 + 5) * 2 -5
'''
class Solution:
    def coloredCells(self, n: int) -> int:
        f = [0] * (n+2)
        f[1] = 1
        for i in range(2, n+2):
            f[n] = 2 * n * n - 2 * n + 1
        return f[n]

上一题