题解 | 小红的矩阵染色

小红的矩阵染色

https://www.nowcoder.com/practice/f8b771318bb04490b7389cc35e148166

import sys
n,m,k=map(int,input().split())
table=[]
for i in range(n):
    table.append(list(input()))
result=[]
for j in range(m):
    middle=[]
    for w in range(n):
        middle.append(table[w][j])
    # print(middle)
    we=0
    while we<n:
        if middle[we]=='o':
            length=0
            while we<n and middle[we]=='o':
                we+=1
                length+=1
            result.append(length)
        else:
            we+=1
result.sort(reverse=True)
total = 0
remaining = k
for length in result:
    if remaining <= 0:
        break
    #判断连续染色数,看是length全染还是只染剩余remaining
    use = min(length, remaining)
    if use >= 2:
        total += use - 1
    remaining -= use
print(total)

全部评论

相关推荐

评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务