반응형
모래시계모양으로 배열 채우기
2차원 배열 A(5.5)의 원소에 다음 그림과 같은 모습으로 값을 저장해주는 알고리즘을 제시하라.
sol) 특징 : 행우선
행을 R , 열을 C, 중간행을 M 이라고 하자.
1행부터 M행 까지의 경우 , C의 범위는 R~(6-R)
(M+1)행부터 5행까지의 경우, C의 범위는 (6-R) ~R
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 | public class Test { public static void main(String[] args) { int A[][] = new int[5][5]; // 1~5 사용 int V = 0; // 출력값을 담은 변수 for (int i = 0; i < 5; i++) { // i는 행, j는 열 if (i <= 2) { for (int j = i; j < 5 - i; j++) { V = V + 1; A[i][j] = V; } } else { for (int j = 4-i; j <=i; j++) { V = V + 1; A[i][j] = V; } } } for (int i = 0; i < 5; i++) { for (int j = 0; j < 5; j++) { System.out.print(A[i][j] + "\t"); } System.out.println(); } } } | cs |
반응형
'알고리즘 > 정보처리기사 실습(JAVA)' 카테고리의 다른 글
[정보처리기사][알고리즘][JAVA]2차원 배열 응용-2(삼각형모양) (1) | 2016.06.16 |
---|---|
[정보처리기사][알고리즘][JAVA]2차원 배열 응용-1 (0) | 2016.06.16 |