当前位置:新励学网 > 秒知问答 > 大一C语言编程题

大一C语言编程题

发表时间:2024-07-21 05:45:59 来源:网友投稿

整体思路如下:

第一步:

程序定义3个主要变量(total_0,tail_0,max_0[段落数]).

total_0:用于存储所有为0的个数;

tail_0:用于统计最后一行末尾0的个数;

max_0[段落数-1]:记录每行前两个字为0的情况下,上一行末尾0前s-1个最多的个数;

第二步:

初始化3个变量为0,接下来依次遍历数组。

2.1如果是0,total_0加1;

2.2如果行的开头前两个数为0,统计一下上一行末尾0的个数,并与max_0数组中元素比较大于其中最小的那个数替换掉;

2.3统计最后一行末尾0的个数,存入tail_0变量中。

第三步:

计算最少损坏的个数

result=total_0-2*s-sum(max_0)-tail_0

解释一下:

最少损坏数等于总0减去段落数*2减去有可能是段落的行上一行末尾0最多的前s-1项(考虑到第一行必须是段落开始,所以是s-1)0的和减去末尾0的个数。

免责声明:本站发布的教育资讯(图片、视频和文字)以本站原创、转载和分享为主,文章观点不代表本网站立场。

如果本文侵犯了您的权益,请联系底部站长邮箱进行举报反馈,一经查实,我们将在第一时间处理,感谢您对本站的关注!