728x90
반응형

Baekjoon 자바 코드 76

[백준] 10811번 바구니 뒤집기 풀이 코드 (Java 자바)

접근 방법)이 문제는 배열을 2개를 이용하여 문제를 해결할 수 있다.배열을 2개를 사용하는 이유는 입력 값에서 주어진 범위 안에서 역순으로 나타낸 배열을 잠시 저장할 수 있는 배열이 필요하기 때문이다.말만으로 이해가 되지 않으면 아래 코드를 참고해보자. ▷ 역순 배열 저장for문을 이용하여 arr2 배열에 입력값 범위 내에서 역순으로 만든 다음(저장), arr1에 arr2 모든 배열 값들을 순서대로 똑같이 복사하는 방법을 이용한다.for(int i = 0; i  이런 방법을 생각해서 배열 번호와 입력 값에 해당하는 숫자 번호를 일치 시킬 때 머리가 조금 아프다 이 방법을 이용해서 아래와 같이 코드를 완성해 보자.정답 코드 1)import java.util.*;class Main { public st..

[백준] 3052번 나머지 풀이 코드 (Java 자바)

접근 방법)이 문제는 배열의 초깃값을 이용하여 문제를 쉽게 풀 수 있다.int형 배열일 경우 초깃값은 0이고, boolean형 배열일 경우 초깃값은 false이다.이러한 점을 이용하여 42의 크기를 가진 배열을 생성한 후, 10개의 입력값을 42로 나누고 각각 값에 해당하는 배열 번호의 배열 값을 1 또는 ture로 할당한 후 for문을 이용하여 배열 안에 1이나 true를 가진 배열의 개수를 출력하면 된다.  ▷ int형 배열 초기값 바꾸기for문을 이용하여 입력 값으로 주어진 42개 배열만 초기값과 다르게 값을 바꿔준다.int[] arr = new int[42];for(int i = 0; i  ▷ boolean형 배열 초기값 바꾸기for문을 이용하여 입력 값으로 주어진 28개 배열만 초기값과 다르게 ..

[백준] 5597번 과제 안 내신 분..? 풀이 코드 (Java 자바)

접근 방법)이 문제는 배열의 초깃값을 이용하여 문제를 쉽게 풀 수 있다.int형 배열일 경우 초깃값은 0이고, boolean형 배열일 경우 초깃값은 false이다.이러한 특징을 이용하여 입력 값에 해당하는 배열 번호는 초깃값과 다른 값으로 설정한 후 배열 1번부터 30번까지 for문을 이용하여 여전히 초깃값에 해당하는 배열 번호를 뽑아 출력하면 된다.  ▷ int형 배열 초기값 바꾸기for문을 이용하여 입력 값으로 주어진 28개 배열만 초기값과 다르게 값을 바꿔준다.int[] g = new int[31];for(int i = 1; i  ▷ boolean형 배열 초기값 바꾸기for문을 이용하여 입력 값으로 주어진 28개 배열만 초기값과 다르게 값을 바꿔준다.boolean[] arr = new boolean..

[백준] 10813번 공 바꾸기 풀이 코드 (Java 자바)

접근 방법) 첫 번째 줄에 배열의 크기와 배열의 값을 서로 바꾸는 반복작업을 진행할 횟수를 알려주기 때문에 정말 쉽게 풀 수 있는 문제이다.N의 크기의 배열을 생성하고 for 문안에서 배열의 값을 서로 바꾸는 반복 작업을 M회 반복하면 된다. 그럼 for문 안에서 배열 값을 서로 바꾸는 코드를 작성하기 위해 잠시 배열 값을 담아둘 수 있는 int형 변수가 필요하다.  ▷ 배열 값 서로 바꾸기 int k 를 이용하여 쉽게 해결할 수 있다.for(int a = 0; a   g [i-1]의 배열 값을 k에 담아두고 g [i-1]에는 g [j-1]의 값을 할당한다.그리고 g [j-1]에는 g [i-1] 값이었던 k를 할당함으로써 두 배열의 값을 서로 바꿀 수 있다. Scanner와 BufferedReader&B..

[백준] 10810번 공 넣기 풀이 코드 (Java 자바)

접근 방법) 첫 번째 줄에 주어진 값을 이용하여 n의 크기를 가진 배열을 생성하고 m만큼 나머지 줄의 규칙을 반복작업을 하는 코드를 생성하면 된다.그렇게 규칙을 이해해 보자면 두 번째 줄부터 a b c 3가지 숫자가 나오는데, 배열의 a-1번 부터 b-1번 까지 c값을 할당한다는 의미이다.그렇게 규칙을 이해하고 for문을 이용하여 출력 값을 성공적으로 출력해보자.  ▷ 규칙에 맞도록 배열에 값 할당하기 2중 for문을 사용하여 문제를 쉽게 해결할 수 있다.for(int i = 0; i   배열 [a-1]부터 배열 [b-1] 번까지 값을 넣어주는 반복 작업 후 마지막으로 배열을 처음부터 끝까지 출력해주면 된다.정답 코드 1) import java.util.Scanner;class Main { publ..

[백준] 2562번 최댓값 풀이 코드 (Java 자바)

접근 방법) 배열을 이용하지 않고 for문 안에서 9번 반복작업을 통해 값 크기 비교를 하여 문제를 풀 수 있다하지만 배열 파트인 만큼 1차원 배열을 사용하여 문제를 풀어보도록 하자. 크기가 N인 1차원 배열을 생성한 후 두 번째 줄에 입력받은 값들을 모두 배열 안에 넣어준다. 그리고 배열 안의 값들을 하나씩 비교하면서 앞 값과 비교했을 때 크면 max, 작으면 min으로 할당하여 N-1번 배열까지 반복작업을 하면 최대, 최솟값을 구할 수 있다.  ▷ 1차원 배열 생성 1차원 배열 생성은 for문을 이용하여 쉽게 나타낼 수 있다.int[] g = new int[N];for(int i = 0; i  배열 [0]부터 배열 [N-1] 번까지 값을 넣어주는 반복 작업으로 1차원 배열을 생성할 수 있다. ▷ ma..

[백준] 10818번 최소, 최대 풀이 코드 (Java 자바)

접근 방법) 배열을 이용하지 않고 for문 안에서 단순한 크기 비교를 통해 문제를 풀 수 있다.하지만 배열 파트인 만큼 1차원 배열을 사용하여 문제를 풀어보도록 하자. 크기가 N인 1차원 배열을 생성한 후 두 번째 줄에 입력받은 값들을 모두 배열 안에 넣어준다.그리고 배열 안의 값들을 하나씩 비교하면서 앞 값과 비교했을 때 크면 max, 작으면 min으로 할당하여 N-1번 배열까지 반복작업을 하면 최대, 최솟값을 구할 수 있다.  ▷ 1차원 배열 생성 1차원 배열 생성은 for문을 이용하여 쉽게 나타낼 수 있다.int[] g = new int[N];for(int i = 0; i  배열 [0]부터 배열 [N-1] 번까지 값을 넣어주는 반복 작업으로 1차원 배열을 생성할 수 있다. ▷ max, min를 구하..

[백준] 10871번 x보다 작은 수 풀이 코드 (Java 자바)

접근 방법) 위 문제 배열을 가지고 풀지 않아도 되는 문제지만 배열 파트인 만큼 배열로 풀어보자.첫 번째 줄 값만큼(왼쪽) 크기를 가진 1차원 배열을 가지고, for문을 이용하여 그 배열 안에 주어진 두 번째 줄값들을 넣는다.그리고 배열 생성 후 또 다른 for문을 이용하여 배열 안에 넣은 값들을 처음부터 하나씩 첫 번째 줄 입력값(오른쪽)과 비교하여 작은 값들을 출력하도록 코드를 작성한다.  ▷ 1차원 배열 생성 1차원 배열 생성은 for문을 이용하여 쉽게 나타낼 수 있다.int[] g = new int[N];for(int i = 0; i  배열 [0]부터 배열 [N-1] 번까지 값을 넣어주는 반복 작업으로 1차원 배열을 생성할 수 있다. 정답 코드 1)import java.util.Scanner;cl..

[백준] 10807번 개수 세기 풀이 코드 (Java 자바)

접근 방법) 위 문제는 첫 번째 입력값의 크기를 가진 1차원 배열을 가지고, for문을 이용하여 그 배열 안에 주어진 두 번째 줄값들을 넣는다.그다음 for문 안의 if문을 이용하여 세 번째 값과 배열의 모든 값들을 하나하나씩 비교하여 카운팅 하여 출력하면 된다.  ▷ 1차원 배열 생성 1차원 배열 생성은 for문을 이용하여 쉽게 나타낼 수 있다.int[] g = new int[N];for(int i = 0; i   배열 [0]부터 배열 [N-1]번까지 값을 넣어주는 반복 작업으로 1차원 배열을 생성할 수 있다.정답 코드 1)import java.util.Scanner;class Main{ public static void main(String[] args){ Scanner s = ne..

[백준] 10951번 A+B - 4 풀이 코드 (Java 자바)

접근 방법) 해당 핵심 포인트는 입력 값이 더 이상 주어지지 않을 때까지 A와 B의 합을 출력하는 반복을 어떻게 만들 것인지가 중요하다. ▷ Scanner를 이용 Scanner에서 더 이상 데이터가 존재하지 않을 때 NoSuchElementException 경고가 나타나며 hasNext() 메소드를 사용해 처리할 수 있다.Scanner s = new Scanner(System.in);while(s.hasNextInt()){ --- } ▷ BufferedReader를 이용 BufferedReader는 더 이상 데이터가 존재하지 않을 때 null을 반환한다.그래서 while((str = br.readLine()) != null){ --- } 이 코드를 사용하여 처리할 수 있다.BufferedReader br..

728x90
반응형