蚂蚁金服 9.22 笔试

编程题

第一题挺简单的,双for暴力可过。

第二题求满足条件的子字符串个数,可以用双指针+比较过,暴力不知道可以不,但是注意要把字符串转为long类型而不是int,再比较。

第三题给一个数n,要求输出一个n*n矩阵,使得每个2×2的子矩阵之和为奇数,如果没有这种矩阵就输出-1,不太会,以前碰到过,但是我忘了咋做,最后直接输出-1也过了22%哈哈哈,有没有大佬教教我,感谢。
全部评论
现在几乎都是三道编程题啊
点赞 回复 分享
发布于 2022-09-27 13:58 陕西

相关推荐

思念SiN:你这里没有通过的主要原因应该是计算平均分数的时候,在你贴的代码的第23行: ```c b[i]=(sum-max-min)/(m-2); ``` 等式的右边实际上是两个`int`类型的变量在做除法,C语言里面得到的结果会是这个除法的整数部分,余数部分被舍弃了,也不会自动变成浮点数去做除法。所以虽然你使用了`b[i]`这个浮点数去接收结果,但是等式右边除法是先得到了一个整数,然后再被转换为浮点数再赋值给了`b[i]`。你可以按下面这样,在做除法之前,先进行类型转换,就能得到期望的结果: ```c b[i]=(float)(sum-max-min)/(float)(m-2); ```
点赞 评论 收藏
分享
评论
1
1
分享

创作者周榜

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