基础练习 字母图形
这里提供一种简便的方法,只要找到规律,个人感觉这个还是比一般的快的
把例题的字母在数组里显示出来是
A:(1.1),(2.2),(3.3),(4.4),(5.5)
B:(1.2),(2.1), (2.3) ,(3.2),(3.4),(4.3),(4.5),(5.4),(5.6)
不难发现 其实字母的出现规律和数组标号的差值有关
A—0
B—1
C—2
D—3
E—4
F—5
G—6
找到这个规律就可以大大简化算法了
关键是i,j的差
import java.util.*;
public class Main {
public static void main(String[] args) {
char a[] = {'A','B','C','D','E','F','G',
'H','I','J','K','L','M','N',
'O','P','Q','R','S','T','U',
'V','W','X','Y','Z'}; //直接把字母存到数组中
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int m = sc.nextInt();
for(int i=0;i<n;i++){
for(int j=0;j<m;j++){
int x = Math.abs(i-j); //利用绝对值函数求出差值
System.out.print(a[x]); //根据差值x打印
}
System.out.println();
}
}
}
个人觉得这个题是属于那种找到规律时间大于码的小题,虽然思考规律可能会花费一些时间,但发现规律了之后动手写代码就会很快。