GiantStepDEV
article thumbnail
자바(Java) [백준] 8958번 : OX 퀴즈
🔄 Algorithm/BaekJoon 2023. 1. 16. 20:51

문제 "OOXXOXXOOO"와 같은 OX퀴즈의 결과가 있다. O는 문제를 맞은 것이고, X는 문제를 틀린 것이다. 문제를 맞은 경우 그 문제의 점수는 그 문제까지 연속된 O의 개수가 된다. 예를 들어, 10번 문제의 점수는 3이 된다. "OOXXOXXOOO"의 점수는 1+2+0+0+1+0+0+1+2+3 = 10점이다. OX퀴즈의 결과가 주어졌을 때, 점수를 구하는 프로그램을 작성하시오. 입력 첫째 줄에 테스트 케이스의 개수가 주어진다. 각 테스트 케이스는 한 줄로 이루어져 있고, 길이가 0보다 크고 80보다 작은 문자열이 주어진다. 문자열은 O와 X만으로 이루어져 있다. 출력 각 테스트 케이스마다 점수를 출력한다. import java.io.*; public class Main { public stati..

자바(Java) - 객체 지향 프로그래밍 (10) 정적 메소드
🗄️ Backend/Java 2023. 1. 16. 19:53

static static(정적 멤버)는 클래스에 소속된 멤버로서 객체를 생성하지 않고 사용할 수 있는 필드와 메소드를 의미한다. 오로지 클래스를 통해서만 호출됨. public class StaticMethod { public static void main(String[] args) { Bank kakao = new Bank("카카오",1000); Bank toss = new Bank("토스", 1000); Bank kb = new Bank("국민", 0); kakao.setDeposit(2000); kakao.setWithdraw(1580); kakao.viewAccount(); System.out.println(Bank.getCount()); // getCount()는 정적 메소드이며, 클래스 소속 }..

자바(Java) - 객체 지향 프로그래밍 (9) 접근 제한자
🗄️ Backend/Java 2023. 1. 16. 19:34

접근 제한자 사용자가 알 필요 없는 정보나 숨겨야 할 정보를 보이지 않도록 하는 개념 클래스와 인터페이스를 다른 패키지나 클래스에서의 접근을 제한하는 용도로 사용 즉, 내부의 필드값을 외부에서 접근하는 것을 제한하기 위함 캡슐화에 대한 핵심 개념 public : 접근 제한 없음 protected : 동일한 패키지 혹은 다른 패키지의 상속 관계 default : 동일한 패키지 private : 동일한 클래스 * 접근제한자 생략하면 default

article thumbnail
자바(Java) - 객체 지향 프로그래밍 (8) super, super()
🗄️ Backend/Java 2023. 1. 16. 19:28

super 자식 클래스가 부모 클래스로 부터 상속 받은 필드(멤버)를 참조하는 변수 클래스 내의 멤버변수와 지역변수의 이름이 같을 경우 구분을 위해 this. 를 사용하듯이 부모 클래스와 자식 클래스 생성자를 구분하기 위해 사용! import 다형성응용1_0116.Product; public class SuperFieldEx1 { public static void main(String[] args) { ChildEx childex = new ChildEx(); childex.childMethod(); } } class ParentEx { int x = 10; } class ChildEx extends ParentEx { int x = 20; void childMethod() { System.out.pri..

article thumbnail
자바(Java) - 객체 지향 프로그래밍 (7) 다형성
🗄️ Backend/Java 2023. 1. 16. 19:12

다형성 여러가지 타입을 한가지 타입으로 처리 할 수 있는 기술(상속 관계시 이용) 부모 클래스의 참조 변수로 자식 클래스의 객체(인스턴스)를 참조하는 방법 단, 부모 클래스가 알고있는 메소드가 오버라이딩 되어 있는 경우에 해당!!! Parent public class Parent { protected int num; public void display() { System.out.println("부모 클래스 메소드"); } } Child public class Child extends Parent { private int x = 100; public Child() {} public void out() { System.out.println("부모의 protected num 필드 : " + num); Syst..

article thumbnail
자바(Java) [백준] 1546번 : 평균
🔄 Algorithm/BaekJoon 2023. 1. 15. 18:11

문제 세준이는 기말고사를 망쳤다. 세준이는 점수를 조작해서 집에 가져가기로 했다. 일단 세준이는 자기 점수 중에 최댓값을 골랐다. 이 값을 M이라고 한다. 그리고 나서 모든 점수를 점수/M*100으로 고쳤다. 예를 들어, 세준이의 최고점이 70이고, 수학점수가 50이었으면 수학점수는 50/70*100이 되어 71.43점이 된다. 세준이의 성적을 위의 방법대로 새로 계산했을 때, 새로운 평균을 구하는 프로그램을 작성하시오. 입력 첫째 줄에 시험 본 과목의 개수 N이 주어진다. 이 값은 1000보다 작거나 같다. 둘째 줄에 세준이의 현재 성적이 주어진다. 이 값은 100보다 작거나 같은 음이 아닌 정수이고, 적어도 하나의 값은 0보다 크다. 출력 첫째 줄에 새로운 평균을 출력한다. 실제 정답과 출력값의 절대..

article thumbnail
자바(Java) [백준] 1110번 : 더하기 사이클
🔄 Algorithm/BaekJoon 2023. 1. 15. 10:59

문제 0보다 크거나 같고, 99보다 작거나 같은 정수가 주어질 때 다음과 같은 연산을 할 수 있다. 먼저 주어진 수가 10보다 작다면 앞에 0을 붙여 두 자리 수로 만들고, 각 자리의 숫자를 더한다. 그 다음, 주어진 수의 가장 오른쪽 자리 수와 앞에서 구한 합의 가장 오른쪽 자리 수를 이어 붙이면 새로운 수를 만들 수 있다. 다음 예를 보자. 26부터 시작한다. 2+6 = 8이다. 새로운 수는 68이다. 6+8 = 14이다. 새로운 수는 84이다. 8+4 = 12이다. 새로운 수는 42이다. 4+2 = 6이다. 새로운 수는 26이다. 위의 예는 4번만에 원래 수로 돌아올 수 있다. 따라서 26의 사이클의 길이는 4이다. N이 주어졌을 때, N의 사이클의 길이를 구하는 프로그램을 작성하시오. 입력 첫째 ..

article thumbnail
자바(Java) [백준] 10951번 : A + B - 4
🔄 Algorithm/BaekJoon 2023. 1. 15. 08:45

문제 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오. 입력 입력은 여러 개의 테스트 케이스로 이루어져 있다. 각 테스트 케이스는 한 줄로 이루어져 있으며, 각 줄에 A와 B가 주어진다. (0 < A, B < 10) 출력 각 테스트 케이스마다 A+B를 출력한다. import java.io.*; public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(Sy..

article thumbnail
자바(Java) [백준] 10952번 : A + B - 5
🔄 Algorithm/BaekJoon 2023. 1. 15. 08:19

문제 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오. 입력 입력은 여러 개의 테스트 케이스로 이루어져 있다. 각 테스트 케이스는 한 줄로 이루어져 있으며, 각 줄에 A와 B가 주어진다. (0 < A, B < 10) 입력의 마지막에는 0 두 개가 들어온다. 출력 각 테스트 케이스마다 A+B를 출력한다. import java.io.*; public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); BufferedWriter bw = new BufferedWriter(ne..

article thumbnail
자바(Java) [백준] 11022번 : A + B - 8
🔄 Algorithm/BaekJoon 2023. 1. 14. 21:25

문제 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오. 입력 첫째 줄에 테스트 케이스의 개수 T가 주어진다. 각 테스트 케이스는 한 줄로 이루어져 있으며, 각 줄에 A와 B가 주어진다. (0 < A, B < 10) 출력 각 테스트 케이스마다 "Case #x: A + B = C" 형식으로 출력한다. x는 테스트 케이스 번호이고 1부터 시작하며, C는 A+B이다. import java.io.*; public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); Buffered..