for(int i=0;i<n;++i){//存图
row = input.nextLine();
for(int j=0;j<n;++j){
alp[i][j] = (int) row.charAt(j)-'a';
}
}
int[][] circle = new int[5][n];//将每一圈拆成4段
for(int t=n,m,id=0;t>0;t-=2,++id){
m=t-1;
for(int j=id,o=1;o<=m;++o,++j){
circle[1][o]=alp[id][j];
}
for(int j=id,o=1;o<=m;++o,++j){
circle[2][o]=alp[j][id+m];
}
for(int j=id+m,o=1;o<=m;++o,--j){
circle[3][o] = alp[id+m][j];
}
for (int j=id+m,o=1;o<=m;++o,--j){
circle[4][o] = alp[j][id];
}
for(int o=1,mx;o<=m;++o){
int[] num = new int[26];
for(int j=1;j<=4;++j){
num[circle[j][o]]++;
//……
}
}
}
该代码片段展示了如何使用for循环对输入行进行字符处理,将其转换为ASCII值,并将每一圈的字符分布到四个矩阵中。随后计算每个矩阵对应位置字符的出现频率。
3627

被折叠的 条评论
为什么被折叠?



