[백준] 2562 - 최댓값
알고리즘/백준2023. 10. 25. 23:17[백준] 2562 - 최댓값

문제 접근방법 & 풀이 해결해야 할 부분은 1. 최대값 찾기 2. 최대값의 인덱스위치 찾기 두 가지 입니다. 최대값 찾기는 이전 문제에서도 구현했듯이 배열의 인덱스 값들을 for문으로 비교해가며 배열 중 가장 큰 값을 max변수에 저장하는 것입니다. 동시에 해당 for문 안에서 count변수에 i+1의 값을 저장해주면 간단하게 최대값의 인덱스위치도 찾을 수 있습니다. 이 때 i+1인 이유는 인덱스는 0부터 시작하기때문에 +1을 해줍니다. for(int i=0; i max) { max = arr[i]; count = i+1; } } 코드 import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner ..

[백준] 10818 - 최소, 최대
알고리즘/백준2023. 10. 24. 22:41[백준] 10818 - 최소, 최대

문제 접근방법 & 풀이 최대값과 최소값을 구하는 문제입니다. 먼저 배열의 길이를 N으로 설정해주고, for문을 통해 N길이 배열의 값을 인덱스에 넣어줍니다. 이후 최대값은 max, 최소값은 min으로 변수를 선언해주고 해당 변수들을 배열의 첫번째 인덱스 값으로 초기화 해줍니다. int max = arr[0]; int min = arr[0]; max와 min의 값을 0이 아니라 인덱스의 첫번째 값으로 초기화해주는 이유는 코드를 직접 머리속으로 돌려보시면 알 수 있습니다. min의 값을 0으로 초기화해준다면 0은 양수 중에서 가장 작은 값이기때문에 어떤 값과 비교를 해도 min은 0이되기 때문입니다. 그 다음 each for문을 사용하여 값을 비교하고 최대값과 최소값을 추출해내는 구문입니다. for(int ..

[백준] 10871 - X보다 작은 수
알고리즘/백준2023. 10. 24. 22:36[백준] 10871 - X보다 작은 수

문제 접근방법 & 풀이 [백준] 10807 - 개수 세기 • 문제 배열을 이용하여 해당 배열에 값을 넣어 특정 값이 몇 개인지 개수를 출력하는 프로그램이다. • 풀이 입력 - 배열에 들어갈 숫자의 개수인 N - 배열의 인덱스에 들어갈 값 - 개수를 알기 lee-dev-log.tistory.com 이전 문제인 개수 세기와 매우 유사한 문제이지만 X값과 비교하여 작을 때의 값을 출력하는 문제이다. 이전 문제에서는 count변수에 요구되는 값과 일치하는 값만큼 count++을 해주는 문제였지만 이번 문제는 X보다 작은 값을 바로 출력하는 문제다. for(int i=0; i

[백준] 10807 - 개수 세기
알고리즘/백준2023. 10. 24. 22:07[백준] 10807 - 개수 세기

• 문제 배열을 이용하여 해당 배열에 값을 넣어 특정 값이 몇 개인지 개수를 출력하는 프로그램이다. • 풀이 입력 - 배열에 들어갈 숫자의 개수인 N - 배열의 인덱스에 들어갈 값 - 개수를 알기위한 입력 값 V 배열의 길이는 입력받은 N으로 설정해주고, 배열의 입력은 for문을 이용하여 값을 입력받는다. int[] arr = new int[N]; for(int i=0; i

[백준] 10951 - A + B-4
알고리즘/백준2023. 10. 20. 23:54[백준] 10951 - A + B-4

• 문제 A+B의 결과를 출력하는 문제이다. 이 문제에서 중요한 점은 입력값을 얼마나 받을지 명시되어있지 않다는 점이다. EOF라는 개념이 들어간다 • 풀이 먼저 EOF란 End of File의 약자로 데이터 소스로부터 더 이상 읽을 수 있는 데이터가 없다는 것을 의미하는 용어이다. 즉, 코드가 없으면 더 이상 입력할 데이터가 없다는 것을 의미한다. 이정도로만 알아놓고 문제를 풀어보자 Scanner와 BufferdReader 두 가지 방법 모두 풀어보도록하겠다. Scanner Scanner로 이 문제를 풀기전에 Scanner의 메서드인 hasNext()에 대해서 먼저 알아야한다. hasNext()는 입력이 있으면 true를 반환하고 더 이상 읽을게 없으면 false를 반환한다. import java.io..

[백준] 10952 - A + B-5
알고리즘/백준2023. 10. 20. 23:14[백준] 10952 - A + B-5

• 문제 A+B를 해주는 문제이다. 이번 문제는 테스트케이스를 받는 것이아니라 두 개의 값에 모두 0이들어오면 출력하고 프로그램을 종료하는 프로그램이다. • 풀이 이번문제에서는 입출력을 BufferedReader, BufferdWriter를 이용하여 풀 것이다. 먼저 프로그램이 종료되는 조건을 살펴보면 A와 B모두 0이 입력되었을때이므로 if(A == 0 && B == 0) A가 0이고, B도 0이면 이라는 코드이다. 위 코드가 들어왔을 경우 BufferdWriter를 사용할 예정이므로 bw.flush를 해주고 반복문을 빠져나오면 된다. 이렇게 반복문의 정해진 종료시점이 없을때는 while문을 사용하는 것이 좋다. 이제 전체코드를 살펴보자 import java.io.BufferedReader; impor..

[백준] 2439 - 별 찍기-2
알고리즘/백준2023. 10. 20. 22:51[백준] 2439 - 별 찍기-2

• 문제 반복문을 이용한 별 찍기 두번째문제이다. • 풀이 N번째 줄인 N의 값을 먼저 입력받는다. 입력받은 N은 N줄을 의미하므로 가장 큰 틀을 for문 조건식으로 만들어준다. for(int i=1; i

[백준] 2438 - 별 찍기 -1
알고리즘/백준2023. 10. 19. 01:38[백준] 2438 - 별 찍기 -1

• 문제 반복문의 꽃이라고 할 수 있는 별 찍기이다. 반복문을 연습하기위해선 다양한 별 찍기를하면 도움이 될 것이다. • 풀이 예제 출력을 보면 *은 행이 바뀔때 마다 하나씩 추가되고있다. 1행은 * 2행은 ** 3행은 *** 4행은 **** 즉, n행의 별의 개수는 n개 임을 알 수 있다. 먼저 행을 의미하는 for문을 먼저 만들어보자 for(int i=1; i

image