반응형

백준 45

[백준] 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를 구하..

[백준] 2525번 오븐 시계 풀이 코드 (Java 자바)

접근 방법)첫째 줄 입력값을 받고 초로 환산한다. 그리고 초로 환산한 조리시간도 더한 후에 오븐이 끝날 시각을 구하면 된다.하지만 자정이 넘어갈 경우 다시 00시 00분으로 초기화해야하는데 이것은 조건문을 사용하여 첫째 줄 시간 입력값 + 조리 시간이 자정을 넘길 경우 86400초(24시간을 초로 환산한 값)을 빼주어 완료 시각을 구하면 된다. 정답 코드 1)import java.util.Scanner;class Main{ public static void main(String[] args){ Scanner s = new Scanner(System.in); int a = s.nextInt(); int b = s.nextInt(); int c = s...

[백준] 2884번 알람 시계 풀이 코드 (Java 자바)

접근 방법)시간과 분이 주어지고 45분을 뺀 시간을 구하는 것은 정말 쉽다.하지만 예제 입력 2와 같이 자정을 살짝 넘긴 상태에서 45분을 뺐을 경우 출력 값이 문제이다.그래서 0시45분 미만 입력 값이 주어졌을 경우에는 24시간을 입력 값에 더한 후 45분 뺄셈을 진행하면 된다.정답 코드 1)import java.util.Scanner;class Main{ public static void main(String[] args){ Scanner s = new Scanner(System.in); int a = s.nextInt(); int b = s.nextInt(); int a_time = a * 3600; // 시간을 초로 환산 ..

[백준] 10798번 세로읽기 풀이 코드 (Java 자바)

접근 방법)5행 15열짜리 배열은 만든 다음 그 배열 속에서 입력 값의 범위만큼 사용하여 문제를 해결하면 된다.5행은 기본적으로 고정이며, 15열 중 몇 열을 사용할지는 Scanner를 통해 입력받은 첫 번째 줄 값을 length() 함수를 이용하여 배열의 행 열 값을 알아낼 수 있다.그리고 이중 for문을 이용하여 2차원 배열을 만들어낼 수 있다. 그리고 만들어진 배열은 이중 for문을 이용하여 출력하면 된다. 정답 코드 1)import java.util.*;import java.lang.*;import java.io.*;class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); ..

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

접근 방법)2차원 배열을 선언하고 입력 값을 모두 2차원 배열 안에 넣음과 동시에 숫자를 모두 하나하나 비교하면서 max를 찾아낸다. 그리고 max에 해당하는 행 열 값을 max와 같이 출력하면 된다. 정답 코드 1)import java.util.*;import java.lang.*;import java.io.*;class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int[][] arr = new int[9][9]; // 배열 생성 int max = 0; // max 값 int x = 0; // 행 값 int y = 0; // 열..

반응형