You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

请求实现单元格内连续不超5次的随机0/1填充功能

生成限制连续次数的随机0/1矩阵

实现思路

  • 逐行构建随机序列,每生成一个数字时,跟踪当前相同数字的连续出现次数
  • 若连续次数已达5次,下一个数字必须切换为另一个值;否则随机选择0或1
  • 重复上述逻辑,直到生成指定长度的行,再按需求生成多行即可

Python代码示例

import random

def generate_valid_row(length):
    if length == 0:
        return []
    row = []
    current_num = random.choice([0, 1])
    row.append(current_num)
    consecutive_count = 1
    for _ in range(length - 1):
        if consecutive_count >= 5:
            current_num = 1 - current_num
            consecutive_count = 1
        else:
            next_num = random.choice([0, 1])
            if next_num == current_num:
                consecutive_count += 1
            else:
                current_num = next_num
                consecutive_count = 1
        row.append(current_num)
    return row

# 生成5行,每行12个元素的矩阵
rows = 5
cols = 12
matrix = [generate_valid_row(cols) for _ in range(rows)]

# 打印格式化后的矩阵
for row in matrix:
    print('  '.join(map(str, row)))

输出示例

0  1  1  1  0  0  0  0  1  0  1  1
1  1  0  0  0  1  1  0  0  0  1  0
0  0  0  0  0  1  1  1  1  1  0  1
1  0  1  0  1  0  1  0  1  0  1  0
0  1  1  1  1  1  0  0  0  0  0  1

说明

  • 通过consecutive_count变量跟踪当前数字的连续次数,一旦达到5次就强制切换
  • 未触发限制时,数字完全随机选择,保证序列的随机性
  • 可通过调整rows和cols参数生成任意行列数的矩阵

内容的提问来源于stack exchange,提问作者Ektor Skourtis

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.18 03:05:20