분류 전체보기 58

[코딩테스트 with 파이썬] 알고리즘 (1) - ArrayList와 LinkedList

ArrayList - 삽입할 공간을 만들어 주어야 함 https://www.acmicpc.net/problem/10818 10818번: 최소, 최대 첫째 줄에 정수의 개수 N (1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄에는 N개의 정수를 공백으로 구분해서 주어진다. 모든 정수는 -1,000,000보다 크거나 같고, 1,000,000보다 작거나 같은 정수이다. www.acmicpc.net * 데이터를 한 변수에 저장하여 순회한다. n = int(input()) array_list = list(map, int(input()).split()) max_num = array_list[0] min_num = array_list[0] for num in array_list: if num > max_num..

Python/BaekJoon 2023.11.26

[Java] Abstract, 다형성

https://youtu.be/g3iQH71q_2I 1. Abstract(추상화) 추상화는 복잡한 문제들 중 공통적인 부분을 추출하여 추상 클래스로 제공하고, 상속을 이용하여 나머지 클래스들을 하위 클래스로 제공하는 기법이다. 추상클래스 및 추상메서드 : 기능만 정의하고, 구현은 하위클래스에서 진행한다. 추상클래스를 사용하면 상속을 강제하는 기능, 추상메서드를 사용하면 오버라이딩을 강제하는 기능을 갖는다. 즉 하위 클래스 및 메서드에서 추상클래스와 메서드의 기능을 모두 사용하게끔 강제하는 역할을 한다. abstract class A{ public abstract int b(); //추상메서드는 본체내용이 있으면 안된다. public void d(){ //추상 클래스 내 일반 메소드가 존재할 수 있다. S..

Java 2022.12.06

[Java] Super, this 연습

class SD1{ public int i1; public double d1; public SD1(int i1){ System.out.println("SD1(int i1) 생성자 수행"); this.i1 = i1*i1; //여기서 그냥 i2라는 새로운 변수로 i2 = i1 * i1 하면 안되나? System.out.println(i1+"의 제곱은 : "+this.i1); } public SD1(double d1){ System.out.println("SD1(double d1) 생성자 수행"); this.d1 = d1 * d1; System.out.println(d1+"의 제곱은 : "+this.d1); } } class Sub1 extends SD1{ public Sub1(int i1){ //매개변수가 ..

Java 2022.11.20

[Java] 상속 연습 - 라면 끓이는 프로그램

import java.util.Scanner; class Ramyon{ protected String boiled_pot; protected String boilwater(String elecpot, String water){ System.out.println(elecpot+"에 "+ water+"을 넣어 끓인다(Ramyon 클래스"); return "끓은 물"; } public void cookRamyon(String ramyon, String vegetable, int time){ boiled_pot = boilwater("전기냄비", "물"); System.out.println(boiled_pot+ "에" + ramyon + "과 " + vegetable + "를 넣고 " + time + "분간 끓..

Java 2022.11.20

[Java] 생활코딩 | 생성자, super, 메소드 오버라이딩, 메소드 오버로딩

https://youtu.be/9_5_bAVHd8c 1. 생성자 - 객체가 생성될 때 필수적으로 수행해야하는 작업을 처음에 세팅해 놓는 것 - 생성자의 이름은 클래스의 이름과 동리해야 한다. - 값을 반환하지 않는다. - 클래스에 생성자가 지정되지 않는 경우에는 묵시적 생성자가 자동으로 생성된다. (묵시적 생성자는 매개변수를 사용할 수 없다) package org.opentutorials.javatutorials.constructor; class Calculator { int left, right; public Calculator(int left, int right) { //생성자, Calculator 객체를 만들때 무조건 left와 right의 값을 지정하게 함 this.left = left; this..

Java 2022.11.13

[Java] 생활코딩 | 클래스 멤버, 인스턴스 멤버, 클래스 메소드, 유효범위

https://youtu.be/o73qn218VjM package org.opentutorials.javatutorials.classninstance; class Calculator { static double PI = 3.14; //클래스 변수 int left, right; public void setOprands(int left, int right) { this.left = left; this.right = right; } public void sum() { System.out.println(this.left + this.right); } public void avg() { System.out.println((this.left + this.right) / 2); } } public class Calc..

Java 2022.11.13

[English] 빈도 표현

https://youtu.be/sARkrMWrJ7g 횟수의 단위가 "1"일때 하루에 한 번 : once a day 일주일에 두 번 : twice a week 한 달에 세 번 : three times a month 일년에 4-5 번 : 4-5 times a year 횟수의 단위가 "2 이상" 일 때 : a 대신 every로! 2일에 한 번 : once every two days 3주에 한 번 : once every three weeks 4개월에 한 번 : once every four months 격주로 : every other 격일에 한 번 : every other day 격주에 한 번 : every other week 격주 토요일 : every other Saturday 격달에 한 번 : every ot..

English 2022.10.06

[Baekjoon] Baekjoon 작성 시 팁, 주의사항, 자주 틀리는 것

✨내가 공부하기 위한 기록! ✔작성 방법 1. 시작 부분에 빠르게 입력을 받을 수 있는 코드 작성 import sys input = sys.stdin.readline 2. 값 입력받기 1) 여러 숫자를 받을 때 a, b, c = map(int, input().split()) 2) 주어지는 입력값을 리스트에 담아 받을 때 a = list(map, int(input().split())) 3) 문자열 입력 받을 때 a = input().rstrip() 4) 문자열 여러 줄 입력받을 때 (1) * input() for _ in range(n) # ABCDE # BCDEF # FABCE str = [input() for _ in range(3)] # str[0] = ABCDE, str[1] = BCDEF, str..

Python/BaekJoon 2022.10.05