분류 전체보기 66

[JAVA] this와 this() 메소드

this의 사용클래스 내의 자신의 객체를 가리키는 것이 this 이다.주로 생성자에서 멤버변수와 생성자의 형식매개변수의 이름을 동일하게 정의한 경우 this. 으로 표현하여 멤버변수와 인수를 구분하는데 사용한다.필드와 매개변수 구분이나 현재 객체 반환에 유용하다.class Shape { int width; int height; String color; // 생성자 // this : 멤버변수와 생성자의 매개변수를 구분하기 위해 사용 Shape(int width, int height) { this.width = width; this.height = height; } // 메소드 void setColor(String color) { ..

JAVA/기초공부 2024.09.28

[JAVA] 생성자와 생성자 중복

생성자란?: 객체가 생성될 때 호출되는 특별한 메서드    자바에서 생성자를 사용하는 이유?객체가 생성될 때 필요한 초기화 작업을 수행하고 특정 상태로 객체를 설정하기 위해서예 ) 멤버변수로 이름, 학번, 학과를 가진 객체를 만든다고 했을 때- 생성자 없이 만들경우class MyInfo_01 { public String name; public int number; public String dept;}public class ConstructorTest_01 { public static void main(String[] args) { // MyInfo_01 클래스 형인 객체 my 생성 MyInfo_01 my = new MyInfo_01(); // ..

JAVA/기초공부 2024.09.28

[Python] 2143 두 배열의 합

문제한 배열 A[1], A[2], …, A[n]에 대해서, 부 배열은 A[i], A[i+1], …, A[j-1], A[j] (단, 1 ≤ i ≤ j ≤ n)을 말한다. 이러한 부 배열의 합은 A[i]+…+A[j]를 의미한다. 각 원소가 정수인 두 배열 A[1], …, A[n]과 B[1], …, B[m]이 주어졌을 때, A의 부 배열의 합에 B의 부 배열의 합을 더해서 T가 되는 모든 부 배열 쌍의 개수를 구하는 프로그램을 작성하시오.예를 들어 A = {1, 3, 1, 2}, B = {1, 3, 2}, T=5인 경우, 부 배열 쌍의 개수는 다음의 7가지 경우가 있다.T(=5) = A[1] + B[1] + B[2] = A[1] + A[2] + B[1] = A[2] + B[3] = ..

백준풀이 2024.09.26

[PyPy] 백준 7453 합이 0인 네 정수

문제정수로 이루어진 크기가 같은 배열 A, B, C, D가 있다.A[a], B[b], C[c], D[d]의 합이 0인 (a, b, c, d) 쌍의 개수를 구하는 프로그램을 작성하시오.https://www.acmicpc.net/problem/7453      난이도골드2     내 코드import sysn = int(sys.stdin.readline())answer = 0A = []B = []C = []D = []for _ in range(n) : a,b,c,d = map(int,sys.stdin.readline().split()) A.append(a) B.append(b) C.append(c) D.append(d)x = []y = []for i in range(n) : f..

백준풀이 2024.09.26

[Python] 백준 13904 과제

문제웅찬이는 과제가 많다. 하루에 한 과제를 끝낼 수 있는데, 과제마다 마감일이 있으므로 모든 과제를 끝내지 못할 수도 있다. 과제마다 끝냈을 때 얻을 수 있는 점수가 있는데, 마감일이 지난 과제는 점수를 받을 수 없다.웅찬이는 가장 점수를 많이 받을 수 있도록 과제를 수행하고 싶다. 웅찬이를 도와 얻을 수 있는 점수의 최댓값을 구하시오. https://www.acmicpc.net/problem/13904       난이도골드3     내 코드import sysimport heapqn = int(sys.stdin.readline())task = []heap = []score = 0heapq.heapify(heap)for _ in range(n) : d, w = map(int,sys.stdin.rea..

백준풀이 2024.09.26

[JAVA 기초] 클래스 정의 및 객체 생성

클래스(Class)의 정의클래스는 객체지향 프로그래밍에서 객체를 생성하기 위한 설계도 또는 틀로, 객체가 공통적으로 소유한 속성과 행위를 추상화하여 코드로 나타낸 것이다. 이를 바탕으로 여러 객체를 만들 수 있다.   인스턴스(Instance)란?클래스에서 생성된 실체 객체를 의미한다. 클래스가 객체를 만들기 위한 설계도라면 인스턴스는 그 설계도로부터 만들어진 구체적인 실체이다. - 클래스 : 객체를 정의하는 설계도. 클래스를 사용하여 같은 구조를 가진 여러 객체를 만들 수 있다.- 인스턴스 : 클래스에서 실제로 생성된 객체. 클래스에서 정의된 속성과 메서드를 가지며 독립적인 값을 갖는다.    클래스의 구성- 클래스 헤더 : 클래스의 정의가 시작되는 부분. 클래스의 이름, 접근 제어자, 상속 여부 등을..

JAVA/기초공부 2024.09.25

[JAVA기초] 객체와 클래스의 개념

객체지향 프로그래밍(OOP) 이란?소프트웨어 개발 패러다임 중 하나로 프로그램을 여러 개의 객체들로 나누어 설계하고 개발하는 방법론이다.객체란 데이터와 이를 처리하는 함수를 하나로 묶은 개념으로, 현실 세계의 사물이나 개념을 컴퓨터 프로그램에서 표현하는 데 사용된다.   속성 (Attributes): 객체가 가지는 데이터 또는 상태ex) 자동차 객체라면 속성은 색상, 브랜드, 속도 가 될 수 있다.   메서드 (Methods): 객체가 할 수 있는 행동 또는 동작ex) 자동차 객체라면 메서드는 출발하기, 멈추기, 속도 변경하기 등이 될 수 있다.   속성과 메서드를 하나로 묶는다는 것은?예를 들면 자동차 객체의 속성은 빨간색, 도요타 브랜드, 현재 속도 50km 라고 가정할 수 있고,그 자동차의 가속 메..

JAVA/기초공부 2024.09.25

[Python] 백준 13975 파일 합치기 3

문제소설가인 김대전은 소설을 여러 장(chapter)으로 나누어 쓰는데, 각 장은 각각 다른 파일에 저장하곤 한다. 소설의 모든 장을 쓰고 나서는 각 장이 쓰여진 파일을 합쳐서 최종적으로 소설의 완성본이 들어있는 한 개의 파일을 만든다. 이 과정에서 두 개의 파일을 합쳐서 하나의 임시파일을 만들고, 이 임시파일이나 원래의 파일을 계속 두 개씩 합쳐서 파일을 합쳐나가고, 최종적으로는 하나의 파일로 합친다. 두 개의 파일을 합칠 때 필요한 비용(시간 등)이 두 파일 크기의 합이라고 가정할 때, 최종적인 한 개의 파일을 완성하는데 필요한 비용의 총 합을 계산하시오.예를 들어, C1, C2, C3, C4가 네 개의 장을 수록하고 있는 파일이고, 파일 크기가 각각 40, 30, 30, 50 이라고 하자. 이 파일..

백준풀이 2024.09.24

[Python] 백준 1202 보석 도둑

문제세계적인 도둑 상덕이는 보석점을 털기로 결심했다.상덕이가 털 보석점에는 보석이 총 N개 있다. 각 보석은 무게 Mi와 가격 Vi를 가지고 있다. 상덕이는 가방을 K개 가지고 있고, 각 가방에 담을 수 있는 최대 무게는 Ci이다. 가방에는 최대 한 개의 보석만 넣을 수 있다.상덕이가 훔칠 수 있는 보석의 최대 가격을 구하는 프로그램을 작성하시오.https://www.acmicpc.net/problem/1202    난이도골드2    내 코드import sysimport queuen, k = map(int,sys.stdin.readline().split())gem = []bag = []answer = 0priority_queue = queue.PriorityQueue() for _ in range(n) ..

백준풀이 2024.09.24

[Python] 백준 9466 텀 프로젝트

문제이번 가을학기에 '문제 해결' 강의를 신청한 학생들은 텀 프로젝트를 수행해야 한다. 프로젝트 팀원 수에는 제한이 없다. 심지어 모든 학생들이 동일한 팀의 팀원인 경우와 같이 한 팀만 있을 수도 있다. 프로젝트 팀을 구성하기 위해, 모든 학생들은 프로젝트를 함께하고 싶은 학생을 선택해야 한다. (단, 단 한 명만 선택할 수 있다.) 혼자 하고 싶어하는 학생은 자기 자신을 선택하는 것도 가능하다.학생들이(s1, s2, ..., sr)이라 할 때, r=1이고 s1이 s1을 선택하는 경우나, s1이 s2를 선택하고, s2가 s3를 선택하고,..., sr-1이 sr을 선택하고, sr이 s1을 선택하는 경우에만 한 팀이 될 수 있다.예를 들어, 한 반에 7명의 학생이 있다고 하자. 학생들을 1번부터 7번으로 표..

백준풀이 2024.09.24