现在给你一张白纸(我们可以理解为空格字符),白纸上面画着一个由非空格字符组成的图形。mfc同学希望你能帮他判断,这个图形是否是一个对称图形。
如果该图形是一个沿平行于Y轴对称的图形,那么npc会获得+1的好感度;
如果该图形是一个沿平行于X轴对称的图形,那么npc会获得+2的好感度;
如果该图形是一个中心对称的图形,那么npc会获得+3的好感度。
npc的好感度初始为0,且好感度可以叠加,现在给出你一个图形,你需要判断,这个图形能够给npc带来多少的好感度。
(注意,空格可以近似理解为白纸,不属于图形,在考虑对称的时候要予以忽视)
输入
一个整数n,表示后续输入有n行,n<=100
接下来n行字符串,表示白纸上的状态,如果为空格字符,则说明白纸上此处无字,如果为非空格字符,说明此处有一个图案。
注意,某一行可能是全部由空格组成的字符串。
每行字符串长度小于100。
输出
一个整数,表示该图形得分
样例输入 复制
样例输入1:
4
样例输入2:
2
样例输入3:
2
A*
A*
样例输出 复制
样例输出1:
6
样例输出2:
1
样例输出3:
2
提示
样例1中:
输入第一行为空格字符串,表示空白区域,读入后应予以忽视。
第二到四行组成的图形,显然既沿 平行于Y轴的线对称、又沿 平行于X轴的线对称,同时也是中心对称,故得分为1+2+3=6分。
样例2中:
输入包含两行,均为有意义的字符串,其中每行的第二个字符均为空格。
显然仅通过观察,内部的空白字符不影响图案的对称性,即可判断,该图形沿 平行于Y轴的线对称,故得分为1分。
样例3中:
输入包含两行,均为有意义的字符串,其中每行字符串的前3个字符均为空格。
显然,开头的空白字符其含义是白纸的空白区域,并非我们判断的图形区域,予以忽略。
对应的图形区域,为沿 平行于X轴的线对称图形,故得分为2分。
你这个题实际意义在哪里昵?
C++(4)——对称/旋转
如有帮助,望采纳
https://blog.csdn.net/frankieweeee/article/details/126267010