baekjoon 7단계 2차원 배열
기록용 baekjoon 단계별 풀이입니다. 언어 : Java
2738번
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
34
35
36
37
38
39
40
41
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;
import java.io.StringReader;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st = new StringTokenizer(bf.readLine());
int n = Integer.parseInt(st.nextToken());
int m = Integer.parseInt(st.nextToken());
int[][] arr = new int[n][m];
int[][] arr2 = new int[n][m];
for(int i=0;i<n;i++)
{
st= new StringTokenizer(bf.readLine());
for(int j=0;j<m;j++)
{
arr[i][j]=Integer.parseInt(st.nextToken());
}
}
for(int i=0;i<n;i++)
{
st= new StringTokenizer(bf.readLine());
for(int j=0;j<m;j++)
{
arr2[i][j]=Integer.parseInt(st.nextToken());
}
}
for(int i=0;i<n;i++)
{
for(int j=0;j<m;j++)
{
System.out.print(arr[i][j]+arr2[i][j]+" ");
}
System.out.println();
}
}
}
2566번
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
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;
import java.io.StringReader;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st;
int[][] arr = new int[10][10];
int max = -1;
int ivalue = 0;
int jvalue = 0;
for(int i=1;i<=9;i++)
{
st = new StringTokenizer(bf.readLine());
for(int j=1;j<=9;j++)
{
arr[i][j] = Integer.parseInt(st.nextToken());
if(max<arr[i][j])
{
max = arr[i][j];
ivalue = i;
jvalue = j;
}
}
}
System.out.print(max+"\n"+ivalue+" "+jvalue);
}
}
10798번
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
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;
import java.io.StringReader;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));
char[][] arr = new char[5][15];
for(int i=0;i<5;i++) //행
{
String s = bf.readLine();
for(int j=0;j<s.length();j++) //열
{
arr[i][j] = s.charAt(j);
}
}
for(int i=0;i<15;i++)
{
for(int j=0;j<5;j++)
{
if(arr[j][i]!='\u0000') //char 타입의 null 값
{
System.out.print(arr[j][i]);
}
}
}
}
}
2563번 - 다시
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
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;
import java.io.StringReader;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));
int cnt = 0;
int n = Integer.parseInt(bf.readLine());
boolean[][] arr = new boolean[101][101];
for(int i=0;i<n;i++)
{
StringTokenizer st = new StringTokenizer(bf.readLine()," ");
int a = Integer.parseInt(st.nextToken()); //직사각형 왼쪽 아래 모서리 x좌표
int b = Integer.parseInt(st.nextToken()); //직사각형 왼쪽 아래 모서리 y좌표
for(int j=a;j<a+10;j++) //직사각형이 차지하는 공간에 대해 반복
{
for(int k=b;k<b+10;k++)
{
if(!arr[j][k]) //해당 좌표가 처음 사용되는 경우
{
arr[j][k] = true; //해당 좌표가 사용되었다고 표시
cnt++; //총 공간의 넓이 증가
}
}
}
}
System.out.println(cnt);
}
}
This post is licensed under CC BY 4.0 by the author.