【贪心算法】 Opponents

这道题写伪代码就好了!
Description

Arya has n opponents in the school. Each day he will fight with all opponents who are present this day. His opponents have some fighting plan that guarantees they will win, but implementing this plan requires presence of them all. That means if one day at least one of Arya's opponents is absent at the school, then Arya will beat all present opponents. Otherwise, if all opponents are present, then they will beat Arya.

For each opponent Arya knows his schedule --- whether or not he is going to present on each particular day. Tell him the maximum number of consecutive days that he will beat all present opponents.

Note, that if some day there are no opponents present, Arya still considers he beats all the present opponents.

Input

The first line of the input contains two integers n and d (1 ≤ n, d ≤ 100) --- the number of opponents and the number of days, respectively.

The i-th of the following d lines contains a string of length n consisting of characters '0' and '1'. The j-th character of this string is '0' if the j-th opponent is going to be absent on the i-th day.

Output

Print the only integer --- the maximum number of consecutive days that Arya will beat all present opponents.

Sample Input

2 2

10

00

Sample Output

2

题意

有一个人,要和n个人pk,要pk d天

如果这一天所有人都来了,他就输了

否则这个人就会说胜利

问这个人最多能够连续胜利多少天

题解:

在这个问题中,我们的目标是找到Arya能够连续获胜的最长天数
子结构: 每个子问题是关于从第 i i i天开始 Arya 能够连胜的天数。在贪婪算法中,我们通过选择当前能够获得最大连胜的方案来逐步构建最优解。

如果当前所有的敌人到齐了,Arya失败,当前能连胜的天数被重置为0;如果当前敌人没到齐,也就是输入的string有一个字符为0,Aray能连胜的天数增加一天。

伪代码

这道题老师只要求写伪代码!

cpp 复制代码
function solution(int n, int d)
	temp=0
	ans=0
	for i=0 to d-1 do
		can=0
		input string s
		for j=0 to n-1 do
			if s[j]==0 then
				can=1 //once there is one that is absent, Arya can beat them all.
				break
		if can==1 then
			temp++
		else temp=0
		ans=max{ans,temp}
    return ans
相关推荐
地平线开发者5 小时前
不同传感器前中后融合方案简介
算法·自动驾驶
地平线开发者5 小时前
征程 6X 常见 kernel panic 问题
算法·自动驾驶
com_4sapi6 小时前
2025 权威认证头部矩阵系统全景对比发布 双榜单交叉验证
大数据·c语言·人工智能·算法·矩阵·机器人
前端小L6 小时前
二分查找专题(九):“降维”的魔术!将二维矩阵“拉平”为一维
数据结构·算法
Jasmine_llq7 小时前
《P7516 [省选联考 2021 A/B 卷] 图函数》
算法·弗洛伊德算法·floydwarshall算法·后缀和计算
kaikaile19957 小时前
三维CT图像重建算法
算法
她说人狗殊途7 小时前
时间复杂度(按增长速度从低到高排序)包括以下几类,用于描述算法执行时间随输入规模 n 增长的变化趋势:
数据结构·算法·排序算法
计科土狗7 小时前
算法基础入门第一章
c++·算法
与己斗其乐无穷7 小时前
算法(二)滑动窗口
算法
Ghost-Face7 小时前
恭喜自己,挑战成功!
算法