Notice
Recent Posts
문제 풀이 및 개발 공간
[백준] 2578번 빙고 문제! (silver 4 본문
import java.io.*;
import java.util.*;
public class Main{
public static void main(String[] args) throws IOException {
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw=new BufferedWriter(new OutputStreamWriter(System.out));
StringTokenizer st;
int[][] board=new int[6][6];
int answer=0;
for(int i=1; i<=5; i++){
st=new StringTokenizer(br.readLine());
for(int j=1; j<=5; j++){
board[i][j]=Integer.parseInt(st.nextToken());
}
}
boolean find=false;
for(int i=0; i<5; i++){
st=new StringTokenizer(br.readLine());
for (int j = 0; j < 5; j++) {
int temp = Integer.parseInt(st.nextToken());
board = check(board, temp);
answer++;
if (i>=2 && bingo(board) >= 3) {
find = true;
break;
}
}
if(find==true){
break;
}
}
bw.write(answer+"");
bw.flush();
}
public static int[][] check(int[][] board,int n){
for(int i=1; i<=5; i++){
for(int j=1; j<=5; j++){
if(board[i][j]==n){
board[i][j]=0;
}
}
}
return board;
}
public static int bingo(int[][] board){
int total=0;
for(int i=1; i<=5; i++){
if((board[i][1]+board[i][2]+board[i][3]+board[i][4]+board[i][5])==0) {
total++;
}
if((board[1][i]+board[2][i]+board[3][i]+board[4][i]+board[5][i])==0){
total++;
}
}
if(board[3][3]==0){
if((board[1][1]+board[2][2]+board[3][3]+board[4][4]+board[5][5])==0){
total++;
}
if((board[5][1]+board[4][2]+board[3][3]+board[2][4]+board[1][5])==0){
total++;
}
}
return total;
}
}
'백준공부 > java' 카테고리의 다른 글
[백준] 13414번 수강신청 (silver 3 (0) | 2023.05.03 |
---|---|
[백준] 1463번 1로 만들기 문제! (silver 3 (0) | 2023.04.29 |
[백준] 3085번 사탕 게임 문제! (silver 2 (0) | 2023.04.27 |
[백준] 1912번 연속합 문제! (silver 2 (0) | 2023.04.26 |
[백준] 17299번 오등큰수 문제! (gold 3 (0) | 2023.04.26 |