第八章第三十六题(拉丁方阵)(Latin square)
-
**8.36(拉丁方阵)拉丁方阵是一个nxn的数组,其中有n个不同的拉丁字母,并且每个拉丁字母恰好只在每行和每列中出现一次。编写一个程序,提示用户输入数字n以及字符数组,如示例输出所示,检测该输出数组是否是一个拉丁方阵。字符是从A开始的前面n个字符。
Enter number n:4
Enter 4 rows of letters separated by spaces:
A B C D
B A D C
C D B A
D C A B
The input array is Latin squre
Enter number n:3
Enter 3 rows of letters separated by spaces:
A F D
Wrong input: the letters must be from A to C
**8.36(Latin square)A Latin square is an array of NxN with n different Latin letters, and each Latin letter appears exactly once in each row and column. Write a program to prompt the user to input the number N and character array. As shown in the sample output, check whether the output array is a Latin square matrix. The character is the first n characters starting from a.
Enter number n:4
Enter 4 rows of letters separated by spaces:
A B C D
B A D C
C D B A
D C A B
The input array is Latin squre
Enter number n:3
Enter 3 rows of letters separated by spaces:
A F D
Wrong input: the letters must be from A to C -
参考代码:
package chapter08; import java.util.Arrays; import java.util.Scanner; public class Code_36 { public static void main(String args[]){ System.out.print("Enter number n:"); Scanner cin = new Scanner(Sy