补题报告

------------恢复内容开始------------

1   

 没有注意看题,导制重复写了函数    createMateix  一直出现编译错误。

2

 

 

 将问题分解:(1)输入菜数,和客人喜欢的编号。(2) 计数各种菜品的喜欢人数(3)输出最受欢迎的菜品及其编号

解决思路  (1)将客人输入数放进数组a[],输入以EOF结束,同时定义一个计数数组cnt[]={0},将输入的a[i]作为数组b的下标,并cnt[a[i]]++(3)最后处理特殊情况通过一个循环后判断最大值,因为当出现并列最大值时,题目要求我们要从大到小输出,所以我们就可以在使用一个循环并用一个数组来记录最大值的下标(菜品编号),然后就是用循环输出。

以下是关键代码部分

 

 3

 

经过分析题目可得一下几种情况(1)n大于字符串长度len(2)n小于zfc长度                                  同时还要考虑当字符串的下标    i-n的正负情况

解决方法思路    将对应得字符放进新的字符数组中(1)当n>len时就是多循环的几轮,所以我们可以用取余来处理(2)当i-n>=0时  p[i-n];当i-n<0时,p[len+i-n];

4

 

题目分析  当我们手动走过数据就会发现,该矩阵的形成包括4种过程每种都将进行(n/2)+1次,需要注意的是每次循环过程中都有一部分下标不变,同时下一次进行另一种循环时,其个数需要注意,因为上一个循环的最后一个结果刚好是下一种循环的开头,所以应当重视。同时还要注意的是红色循环一开始是7个。1次大循环结束后行和列应当发生变化,是数据能向内推进,所以我们要设置4个数ii0,j0,hang=n-1,lie=n-1.

解题思路                  首先我们应使用嵌套循环和并列循环主循环是次数,其中嵌套着4中过程的并列循环   

循环1 

 

 循环2

 

 

循环3

 

 

循环4

 

j0+1的原因是第四轮进行中会发现,尾部是第一次循环的第一个数,头部是第三次循环的第一个数,所以应当减少循环次数 

在一轮大循环结束后4个数据应当发生变化

 

 

------------恢复内容结束------------

posted @ 2021-12-02 23:05  赵ch  阅读(46)  评论(0编辑  收藏  举报