ZOJ-1051
2013-12-13 15:45
483 查看
import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int count = sc.nextInt(); for (int l = 0; l < count; l++) { int day = sc.nextInt(); int[] dna = new int[16]; for (int k = 0; k < dna.length; k++) { dna[k] = sc.nextInt(); } int[][] data = new int[20][20]; for (int i = 0; i < 20; i++) { for (int j = 0; j < 20; j++) { data[i][j] = sc.nextInt(); } } for (int d = 0; d < day; d++) { int matrix[][] = caculateDNA(data, dna); change(data, matrix); } if (l > 0) System.out.println(); print(data); } } static void change(int[][] data, int[][] matrix) { for (int i = 0; i < data.length; i++) { for (int j = 0; j < data[i].length; j++) { int r = data[i][j] + matrix[i][j]; if (r < 0) { r = 0; } if (r > 3) { r = 3; } data[i][j] = r; } } } static int[][] caculateDNA(int[][] data, int[] dna) { int matrix[][] = new int[data.length][data[0].length]; for (int i = 0; i < data.length; i++) { for (int j = 0; j < data[i].length; j++) { matrix[i][j] = dna[caculateK(data, i, j, data.length)]; } } return matrix; } static int caculateK(int[][] data, int i, int j, int length) { int result = data[i][j]; if (i - 1 >= 0) { result += data[i - 1][j]; } if (i + 1 < length) { result += data[i + 1][j]; } if (j - 1 >= 0) { result += data[i][j - 1]; } if (j + 1 < length) { result += data[i][j + 1]; } return result; } static void print(int[][] data) { String[] ss = new String[] { ".", "!", "X", "#" }; for (int i = 0; i < data.length; i++) { for (int j = 0; j < data[i].length; j++) { System.out.print(ss[data[i][j]]); } System.out.println(); } } }
相关文章推荐
- Zoj1051 A New Growth Industry
- zoj 1051 A New Growth Industry
- zoj1051 A New Growth Industry
- ZOJ Problem Set - 1051
- zoj 1051 A New Growth Industry
- ZOJ Problem Set - 1051
- ZOJ1051 A New Growth Industry
- zoj1051--------A New Growth Industry 细菌~
- ZOJ_1051_A New Growth Industry
- ZOJ-1025(POJ-1065、HDU-1051) Wooden Sticks
- zoj-1051
- ZOJ1051 A New Growth Industry
- ZOJ 1051 A New Growth Industry
- [水]ZOJ1051
- hdu 1051/zoj 1025 贪心问题
- ZOJ 1051 A New Growth Industry
- zoj 1051
- ZOJ 1048 1049 1051
- zoj 1051
- ZOJ1051 A New Growth Industry