ACM zoj 1955(四分树实现)

这是道方阵颜色分割的题目,因而可以用四分树来解决。其实这道题对我来说,难点在于将要分割的颜色提取出来,因为当你遇到Q时说明你要将后面的颜色分成四块,如果在这之中又出现Q的话,那你就要用同样的方法将Q后面的颜色进行分割。刚开始可能急于求成,没有一步步耐心地找出规律,直到最后静下心来,从中总结出规律,才将这段算法写出来。



#include #include #include #include using namespace std; char Array[513][513]; void loadToArray(int r,int c,int n,string str) { //直到首元素不为'Q',表示不用再分割 if(str[0]!='Q') { for(int i=r; i>str; loadToArray(0,0,n,str); display(n); } }





【ACM zoj 1955(四分树实现)】

    推荐阅读