(PAT乙级)1068 万绿丛中一点红(C语言实现)

(PAT乙级)1068 万绿丛中一点红(C语言实现)_第1张图片

(PAT乙级)1068 万绿丛中一点红(C语言实现)_第2张图片

总结:

1、开始的时候是想用二维数组来储存数据的,但是后面发现我没有办法比较两个数之间是否相等,所以想改一维数组,但一维数组的毛病又在于它四周的元素不好找。所以这里的巧思在于:并没有比较元素之间是否相等,而是用Hash数列,判断hash数列对应的数字是否为1来判断是否独特。是独特的话在判断是不是与四周8个元素的像素相差大,这个可以单独为一个函数判断。

2、这里建立hash数列数组时,最好定义为全局变量,虽然我也没搞懂为什么,但是如果我将其放在主函数内会发生段错误。

3、注意输出格式,(%d: %d)——第二个%d之前有个空格!!!

你可能感兴趣的:((PAT乙级)1068 万绿丛中一点红(C语言实现))