문제
boolean[][] board = {
{true, false},
{false, true}
};
주어진 배열에서 true를 검은 바둑돌, false를 흰 바둑돌이라고 가정했을 때,
검은 바둑돌의 좌표를 출력하는 프로그램을 작성하자
풀이 과정
1. for문을 중첩으로 사용해서 2차원 배열의 각 데이터에 접근
- for-each는 반복할 때마다 증가하는 값을 가지는 변수가 없으므로 해당 문제에서 사용 불가
2. 조건문으로 해당 값이 true일 때, 중첩된 반복문의 증가된 값 2개를 각 x, y좌표로 출력
결과
package chap1;
public class BlackStoneFinder {
public static void main(String[] args) {
boolean[][] board = {
{true, false},
{false, true}
};
for(int i=0; i<board.length; i++){
for(int j=0; j<board[i].length; j++){
if(board[i][j]){
System.out.println("검은돌(●) 위치: (" + i + "," + j + ")");
}
}
}
}
}
☝️ if문은 괄호 안의 조건이 true일 때 실행되는데, `board[i][j]` 자체가 이미 boolean 값이므로 별도의 비교 연산 없이도 바로 조건으로 사용 가능하다.
'알고리즘 > 문제 풀이' 카테고리의 다른 글
[부트캠프][Java] 단어 맞히기 게임 (1) | 2025.02.28 |
---|---|
[부트캠프][Java] ArrayList로 장바구니 구현하기 (0) | 2025.02.26 |
[백준][Java] 백슬래시 출력하기 (0) | 2025.02.22 |
[백준][Java] 큰 값의 정수 3개를 동시에 입력 받아 총합 계산하기 (2) | 2025.02.21 |
[부트캠프][Java] 스파르타 자판기 (0) | 2025.02.13 |