Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- 개발자
- 프로그래머스 SQL
- 입출력
- 메서드
- sql문
- 데이터 조회
- 정보처리기사필기요약
- 자바스크립트
- SQL
- 백엔드
- Linux
- 프론트엔드
- StringBuilder
- 리눅스
- String클래스
- JavaScript
- DML
- where
- 클래스
- 형변환
- 알고리즘
- MySQL
- order by
- 스프링
- BufferedReader
- 프로그래밍
- 프로그래머스 sql 고득점 kit
- 백준
- Java
- github
- 자바
- 정보처리기사
- scanner
- Git
- mybatis
- html
- 웹개발
- 예외처리
- select문
- select
Archives
- Today
- Total
ToBe끝판왕
[ 알고리즘 ] 백준 2562번 문제 - 자바( JAVA ) 본문
반응형
주의사항
※ 백준에서 정해진 출력 형식을 출력해야 한다.
※ 백준 알고리즘에서는 클래스명을 Main으로 해주어야 한다.
백준 2562번 문제
백준 알고리즘의 단계별 문제 풀기
4단계 < 1차원 배열 >
▶ 해당 문제 링크
https://www.acmicpc.net/problem/2562
코딩 하기
1) Scanner 사용
import java.util.Scanner;
public class Main {
public static void main( String[] args ) {
Scanner sc = new Scanner( System.in );
int[] arr = { sc.nextInt(), sc.nextInt(), sc.nextInt(),
sc.nextInt(), sc.nextInt(), sc.nextInt(),
sc.nextInt(), sc.nextInt(), sc.nextInt() };
sc.close();
int count = 0;
int max = 0;
int index = 0;
for( int value : arr ) {
count++;
if( value > max ) {
max = value;
index = count;
}
}
System.out.print( max + "\n" + index );
}
}
2) BufferedReader 사용
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;
public class Main {
public static void main( String[] args ) throws IOException {
BufferedReader br = new BufferedReader( new InputStreamReader( System.in ) );
int[] arr = new int[9];
for( int i=0; i<9; i++ ) {
// BufferedReader 기본반환값이 문자이므로 형변화만 주의해주면 된다.
arr[i] = Integer.parseInt( br.readLine() );
}
int max = 0;
int index = 0;
int count = 0;
for( int value : arr ) {
count++;
if( value > max ) {
max = value;
index = count;
}
}
System.out.println( max );
System.out.println( index );
}
}
문제 해결
1) Scanner 사용
정수 9개를 담을 배열을 선언한다. ( 선언과 함꼐 입력으로 초기화 하였다. )
int[] arr = { sc.nextInt(), sc.nextInt(), sc.nextInt(),
sc.nextInt(), sc.nextInt(), sc.nextInt(),
sc.nextInt(), sc.nextInt(), sc.nextInt() };
count( 몇 번째 돌렸는지 ) , max( 최대값 ) , index( 몇 번째 수 ) 각각 변수 선언
int count = 0;
int max = 0;
int index = 0;
배열의 원소를 하나씩 value에 저장하고, 마지막 value 와 value값을 비교하여 value가 마지막 value보다
크면 count값과 value값을 각각 저장한다.
그리고 max와 한줄띄기( "\n" )를 하고 index를 출력한다.
for( int value : arr ) {
count++;
if( value > max ) {
max = value;
index = count;
}
}
System.out.print( max + "\n" + index );
2) BufferedReader 사용
나머지 알고리즘은 같고 문자를 반드시 Integer.parseInt( ) 를 통해서 int형으로 형변환해준다.
// BufferedReader 기본반환값이 문자이므로 형변화만 주의해주면 된다.
arr[i] = Integer.parseInt( br.readLine() );
}
반응형
'■ 알고리즘 > 백준 JAVA' 카테고리의 다른 글
[ 알고리즘 ] 백준 10818번 문제 - 자바( JAVA ) (0) | 2022.05.31 |
---|---|
[ 알고리즘 ] 백준 1110번 문제 - 자바( JAVA ) (0) | 2022.05.27 |
[ 알고리즘 ] 백준 10951번 문제 - 자바( JAVA ) (0) | 2022.05.27 |
[ 알고리즘 ] 백준 10871번 문제 - 자바( JAVA ) (0) | 2022.05.27 |
[ 알고리즘 ] 백준 2439번 문제 - 자바( JAVA ) (0) | 2022.05.26 |
Comments