본문 바로가기

💜💜💜115

(#1546 Java) 평균 문제 문제 이해 이 문제는 세준이의 점수를 입력 받고, 그 중 최댓값을 찾아 M이라구 했을 떄, 점수/M*100으로 모든 점수를 바꾼 후, 새로운 평균을 계산해 출력하는 문제다. 즉 세준이의 점수 조작,,,, 문제 해결 이 문제의 핵심은 배열, 최댓값, 합, 평균 등을 double 형태로 받아야 한다는 것이다. int를 사용해 계산하면 소숫점까지 나오지 않아 문제가 원하는 출력 형태가 나오지 않는다. 우선 과목의 개수 N을 입력 받고, 배열, 최댓값 M, 합 sum을 생성 및 초기 작업을 해준다. Scanner in = new Scanner(System.in); int N = in.nextInt(); //과목 개수 double[] array = new double[N]; double M = array[0.. 2023. 8. 12.
(#10811 Java) 바구니 뒤집기 문제 문제 이해 5 4 : 5개의 바구니. 순서대로 1 2 3 4 5 의 번호가 적혀 있음. 4번 순서를 역순으로 바꾼다는 의미. 1 2 : 1번부터 2번까지 순서를 역순으로 바꿈. 2 1 3 4 5 3 4 : 3번부터 4번까지 순서를 역순으로 바꿈. 2 1 4 3 5 1 4 : 1번부터 4번까지 순서를 역순으로 바꿈. 3 4 1 2 5 2 2 : 그대로. 3 4 1 2 5 => 최종 출력 결과 문제 해결 우선 바구니의 개수 N과 역순으로 몇 번 바꾸는지를 나타내는 M을 입력 받고, 바구니 안에 숫자를 넣을 배열을 생성한다. Scanner in = new Scanner(System.in); int N = in.nextInt(); int M = in.nextInt(); int arr[] = new int[.. 2023. 8. 11.
(#3052 Java) 나머지 문제 문제 이해 입력 받은 10개의 정수를 42로 나눈 나머지를 구한 후 그 나머지들을 비교해 서로 다른 값이 몇 개 인지 출력하는 문제이다. 문제 해결 음.. 우선 크기 10의 배열을 만든다. Scanner in = new Scanner(System.in); int[] array = new int[10]; 배열의 크기만큼 반복해 수 입력 받고, 42로 나눈 나머지를 배열에 저장해준다. for (int i = 0; i Arrays.sort( ) 사용해 정렬★ Arrays.sort( ) : 오른차순 정렬 & 중복 제거 Arrays.sort(array); ★나머지가 -1일 수는 .. 2023. 8. 9.
(#5597 Java) 과제 안 내신 분..? 문제 문제 이해 30명 학생 중 28명만 과제를 제출했는데, 제출하지 않은 출석 번호를 순서대로 (작은 순서대로) 구하는 문제. 문제 해결 왜 문제를 처음보면 알고리즘이 바로 생각나지 않는 거지,, 사실 차분하게 생각해보면 생각보다 쉽게 풀리는 문제이다. 우선 1부터 30까지 모든 출석번호가 들어있는 고정적인 배열 하나와, 입력 받을 28개의 출석번호가 담긴 배열 하나가 필요하다. int[] array1 = new int[30]; int[] array2 = new int[28]; 1부터 30까지 모든 출석번호가 들어있는 배열을 만들어보자 for (int i = 0; i < array1.length; i++) { array1[i] = i + 1; //1번부터 저장하기 위해 i + 1 } 그리고 28개의 출.. 2023. 8. 9.
(#10813 Java) 공 바꾸기 문제 문제 이해 문제에 나와있는 예제 입력을 예시로 들어보자. 첫 번째 줄, 첫 번째에 주어진 N은 바구니의 개수이며 들어있는 공은 바구니와 같은 숫자를 가졌다고 한다. N = 5 : 5개의 바구니에는 1 2 3 4 5 각 숫자가 적힌 공이 들어있는 것. M = 4 : 4번에 거쳐 공을 교환한다는 의미이다. 1 2 : 1번 바구니에 들어있는 공과 2번 바구니에 들어있는 공을 바꾼다. 즉 2 1 3 4 5 가 되는 것. 3 4 : 같은 방법으로 공을 바꾸면 2 1 4 3 5 1 4 : 3 1 4 2 5 2 2 : 3 1 4 2 5 (최종 결과) 문제 해결 그럼 이를 어떻게 코드로 구현할까? 우선 이 문제 풀이의 핵심은 temp 사용이다. 알고리즘 처음 배울 때 두 변수 값을 바꾸기 예시로 꼭 나왔던 것 같.. 2023. 8. 8.
추상화 (인터페이스, 추상 클래스) 추상화란? 복잡한 데이터를 단순화하는 프로세스이다. 추상화를 통해 객체를 더 쉽게 이해할 수 있다 !! Java에서 추상화는 인터페이스와 추상클래스로 구분된다 인터페이스 인터페이스는 객체의 동작 방식을 정의, 즉 객체가 가져야하는 기능들을 명시한다. Java에서 인터페이스는 키워드를 통해 정의된다. public interface MyInterface { public void method1(); public void method2(); } 인터페이스 이름 : MyInterface MyInterface 인터페이스는 method1과 method2를 갖는다. 이 인터페이스를 구현하는 클래스는 반드시 MyInterface에서 정의된 메소드를 모두 구현해야 함!!★ 인터페이스는 다중 상속이 가능하며, 상수와 추상 .. 2023. 8. 8.
반응형