본문 바로가기

Programing30

Python - Class 수업정리 Class 기본 개념클래스와 객체 (인스턴스)객체와 인스턴스의 차이클래스를 쓰는 이유클래스 정의객체 생성함수 방식 vs 클래스 방식self클래스 변수와 인스턴스 변수생성자 __init__self 누락 에러 예제Class- 객체지향 프로그래밍( OOP, Object Oriented Programming)의 기본단위- 클래스명은 일바적으로 첫문자를 대문자로 작성- Field( 변수) 와 Method(함수) 로 구성- 반복되는 변수 & 매소드(함수)를 미리 정하여 만들어 놓은 설계- 클래스는 프로그래밍 과정에서 객체를 정의하는 데이터와 이를 활용하는 기능을 가질 수 있는 구조를 의미한다.- 각 클래스는 그 안에 그 상태를 정의 할수 있는 속성(attributes)와 그 상태를 변경할 수 있는 메서드(.. 2026. 4. 17.
#11 택배상자 꺼내기 문제 설명1 ~ n의 번호가 있는 택배 상자가 창고에 있습니다. 당신은 택배 상자들을 다음과 같이 정리했습니다.왼쪽에서 오른쪽으로 가면서 1번 상자부터 번호 순서대로 택배 상자를 한 개씩 놓습니다. 가로로 택배 상자를 w개 놓았다면 이번에는 오른쪽에서 왼쪽으로 가면서 그 위층에 택배 상자를 한 개씩 놓습니다. 그 층에 상자를 w개 놓아 가장 왼쪽으로 돌아왔다면 또다시 왼쪽에서 오른쪽으로 가면서 그 위층에 상자를 놓습니다. 이러한 방식으로 n개의 택배 상자를 모두 놓을 때까지 한 층에 w개씩 상자를 쌓습니다.위 그림은 w = 6일 때 택배 상자 22개를 쌓은 예시입니다.다음 날 손님은 자신의 택배를 찾으러 창고에 왔습니다. 당신은 손님이 자신의 택배 상자 번호를 말하면 해당 택배 상자를 꺼내줍니다. 택배 .. 2026. 4. 15.
#10 [PCCE 기출문제] 9번 / 지폐 접기 | 그리디 문제 설명민수는 다양한 지폐를 수집하는 취미를 가지고 있습니다. 지폐마다 크기가 달라 지갑에 넣으려면 여러 번 접어서 넣어야 합니다. 예를 들어 지갑의 크기가 30 * 15이고 지폐의 크기가 26 * 17이라면 한번 반으로 접어 13 * 17 크기로 만든 뒤 90도 돌려서 지갑에 넣을 수 있습니다. 지폐를 접을 때는 다음과 같은 규칙을 지킵니다.지폐를 접을 때는 항상 길이가 긴 쪽을 반으로 접습니다.접기 전 길이가 홀수였다면 접은 후 소수점 이하는 버립니다.접힌 지폐를 그대로 또는 90도 돌려서 지갑에 넣을 수 있다면 그만 접습니다.지갑의 가로, 세로 크기를 담은 정수 리스트 wallet과 지폐의 가로, 세로 크기를 담은 정수 리스트 bill가 주어질 때, 지갑에 넣기 위해서 지폐를 최소 몇 번 접어야 .. 2026. 4. 14.
#9 바탕화면 정리 | 완전 탐색 문제 설명코딩테스트를 준비하는 머쓱이는 프로그래머스에서 문제를 풀고 나중에 다시 코드를 보면서 공부하려고 작성한 코드를 컴퓨터 바탕화면에 아무 위치에나 저장해 둡니다. 저장한 코드가 많아지면서 머쓱이는 본인의 컴퓨터 바탕화면이 너무 지저분하다고 생각했습니다. 프로그래머스에서 작성했던 코드는 그 문제에 가서 다시 볼 수 있기 때문에 저장해 둔 파일들을 전부 삭제하기로 했습니다.컴퓨터 바탕화면은 각 칸이 정사각형인 격자판입니다. 이때 컴퓨터 바탕화면의 상태를 나타낸 문자열 배열 wallpaper가 주어집니다. 파일들은 바탕화면의 격자칸에 위치하고 바탕화면의 격자점들은 바탕화면의 가장 왼쪽 위를 (0, 0)으로 시작해 (세로 좌표, 가로 좌표)로 표현합니다. 빈칸은 ".", 파일이 있는 칸은 "#"의 값을 가.. 2026. 4. 14.
Python - List 수업정리chapter List를 사용하는 이유List 개념리스트 생성슬라이싱 문법리스트 삭제 방법리스트 관련 함수append() vs extend() 1. List를 왜 사용하는가유사한 데이터를 여러 개 다룰 때, 각각을 개별 변수로 선언하면 코드가 길어지고 관리와 조작이 비효율적이다.이를 해결하기 위해 여러 데이터를 하나의 구조로 묶어 저장하고, 반복 처리 및 일괄 조작을 가능하게 하는 자료형이 리스트이다.2. List 데이터 목록을 다루는 자료형개별적인 값을 하나의 변수에 담아서 처리매번 변수의 이름을 작성하고 관리하는 것보다 편리하고 효율적한꺼번에 복사하고 조작이 가능 항목 또는 요소리스트를 이루는 원소로 쉼표로 구분된 자료값요소의 유형각 요소들의 자료형은 반드시 같을 필요는 없다.리스트의 요소는 .. 2026. 4. 14.
머신러닝 더보기수업정리 Chapter 1. 인공지능 개요인공지능머신러닝딥러닝머신러닝 vs 딥러닝Chapter 2. 머신러닝의 분류지도학습비지도학습강화학습Chapter 3. 지도학습 알고리즘분류 (Classification)회귀 (Regression)KNNSVM의사결정나무로지스틱 회귀Chapter 4. 비지도학군집(Clustering)K-MeansDBSCANChapter 5. 강화학습Q-LearningDeep Q LearningChapter 6. 핵심 개념가중치 (Weight)과적합 (Overfitting) 인공지능, 머신러닝, 딥러닝의 관계1) 인공지능인간이 가진 지적 능력을 컴퓨터를 통해 구현하는 기술인공지능의 구분 강인공지능(Strong AI) : 인간의 능력을 초월한 성능을 가진 AI 약인공지능(Weak A.. 2026. 4. 13.