728x90
반응형

전체 글 147

[42서울] 2023-2 라피신 후기

2-1학기를 마치고 방학 중 7~8월 한 달 동안 참여했던 42서울 라피신에 대해 후기를 남겨보려 합니다. 42서울? 라피신? 42(Ecole 42)는 프랑스에서 설립된 교육기관으로서 교수, 교재 학비가 없는 교육을 진행합니다. 42는 전 세계적으로 역량을 인정받아 세계 각국으로 캠퍼스를 확장했고, 한국에는 42서울이라는 형태로 들어오게 되었습니다. 라피신은 42서울 본과정 전에 참여자들을 한 달간 본과정의 교육방식에 맞춰 적응시키는 집중교육 과정입니다. 이 기간에는 42서울의 공부 방식대로 공부를 하게 되며, 라피신이 끝난 후에는 지원자들을 종합 평가하여 본 과정에 선발합니다. 자세한 내용은 본문 아래쪽이나 홈페이지를 참고하세요. https://42seoul.kr/seoul42/main/view 42 ..

[백준][Java] 15650번 - N과 M (2)

https://www.acmicpc.net/problem/15650 15650번: N과 M (2) 한 줄에 하나씩 문제의 조건을 만족하는 수열을 출력한다. 중복되는 수열을 여러 번 출력하면 안되며, 각 수열은 공백으로 구분해서 출력해야 한다. 수열은 사전 순으로 증가하는 순서로 출력해 www.acmicpc.net 풀이 재귀함수를 사용하여 수열을 생성하고, 수열의 길이가 m이 되었을 때 출력 재귀함수의 깊이는 M이 됨 함수의 깊이 = M(m = 0)이면, 만들어 놓은 수열 출력 함수의 깊이 0)이면, 다음 깊이의 함수를 호출할 때 새로운 수열을 전달함 (새로운 수열 = 이번 함수에서 인자로 받은 수열 + 수열에 새로운 숫자 추가) k - 조합을 생성하기 위한 시작 수 n - 범위의 최대 수 ..

백준/Java 2023.07.13

[백준][C++] 18111번 - 마인크래프트

https://www.acmicpc.net/problem/18111 18111번: 마인크래프트 팀 레드시프트는 대회 준비를 하다가 지루해져서 샌드박스 게임인 ‘마인크래프트’를 켰다. 마인크래프트는 1 × 1 × 1(세로, 가로, 높이) 크기의 블록들로 이루어진 3차원 세계에서 자유롭게 www.acmicpc.net 풀이 모든 땅의 높이만 같으면 되므로 N*M 크기의 땅을 선형변환 -> a[N*M] 모든 땅의 높이 중 최고 높이과 최저 높이 사이의 값이 땅을 고르는 높이가 될 수 있음 땅을 고르게 될 높이별로 땅을 고르는 시간 측정 -> 최솟 값 저장 이때 고르는 작업에 의한 인벤토리의 블록 개수 측정 -> 음수라면 불가능한 작업이므로 시간 측정 배제 -> 이때 작은 수에서 큰 수로 땅의 높이를 증가하면서 ..

백준/C++ 2023.07.10

[Swift] 스위프트 기본 문법 4 (조건문, 반복문)

조건문 if-else switch 반복문 for-in while repeat-while 1. 조건문 if-else 문 if condition { code } else if condition { code } else { code } 조건문의 condition에는 항상 Bool 타입을 사용 switch 문 switch value { case pattern: code case pattern: code default: code } 가능한 모든 case가 명시되어 있지 않은 경우, default 문을 포함시켜야 한다. case 문이 끝나면 자동으로 break가 적용 break 기능을 원하지 않다면 fallthrough를 사용 범위연산자 1..

[Swift] 스위프트 기본 문법 3 (함수)

함수 선언 함수 호출 매개변수 기본 값 전달인자 레이블 가변 매개변수 함수의 타입 표현 1. 함수 선언 func 함수이름 (매개변수1: 타입, 매개변수2: 타입, ...) -> 반환타입 { 함수 구현부 return 반환값 } func sum(a: Int, b: Int) -> Int { return a + b } 반환 값이 없다면 -> Void -> Void와 return 생략 가능 2. 함수 호출 sum(a: 3, b: 5) 매개변수가 없다면 괄호() 안쪽을 비워놓으면 된다. 3. 매개변수 기본 값 func 함수이름 (매개변수1: 타입, 매개변수2: 타입 = 매개변수 기본 값, ...) -> 반환타입 { 함수 구현부 return 반환값 } func sum(a: Int, b: Int = 0) { print..

[Swift] 스위프트 기본 문법 2 (Array, Dictionary, Set)

Array Dictionary Set 1. Array 순서가 있는 리스트 빈 Array 생성 var array1: Array = Array() var array2: Array = [Double]() var array3: [Strint] = [Strint]() var array4: [Character] = [] // Array와 [Int]는 같은 표현 let array5 = [1, 2, 3] // append(), remove() 등과 같은 메소드 사용 불가 다음과 같은 메소드 사용 가능 .append() - 원소 추가 .contains() - 원소 포함 여부 확인 .remove() - 원소 제거 .count - 원소 개수 2. Dictionary 키(key)와 키에 해당하는 값(value)으로 구성된 집..

[Swift] 스위프트 기본 문법 1 (언어 관습, 콘솔로그, 문자열 보간법, 데이터 타입, Any, AnyObject, nil)

이 블로그에서 다루게 될 Swift 기본 문법은 C/C++, Java 등 기본 프로그래밍 문법들에 대한 이해가 전반적으로 있는 상황을 가정하고 작성하였습니다. 언어 관습 콘솔로그 문자열 보간법 변수 / 상수 기본 데이터 타입 Any / AnyObjcetive / nil 1. 언어 관습 가독성 높은 이름 - 목적을 나타내는 이름 붙이기: s 보다 sum - 충분히 긴 이름 사용: AVM 보다 AutoVendingMachine 헝가리언 이름 붙이기 - 클래스 이름 -> 첫 번째 문자는 대문자, 각 단어의 첫 번째 문자만 대문자 - 변수, 메소드 -> 첫 단어 이후 각 단어의 첫 번째 문자만 대문자 - 상수 -> 모든 문자 대문자 2. 콘솔로그 print 단순 문자열 출력 dump 인스턴스의 자세한 설명까지 ..

[객체지향프로그래밍] 자바 데이터 베이스 관리 프로그래밍 실습

프로젝트 소개 오늘은 제가 최근에 진행한 자바 실습 프로젝트에 대해 소개하려고 합니다. 이 프로젝트는 데이터베이스의 생성, 조회, 수정, 삭제 등의 작업을 효율적으로 처리하는 시스템을 개발하는 것이 목표입니다. 프로그램의 테스트 케이스로는 도서 관리 시스템을 작동시켜 보았습니다. 프로젝트 구조 및 파일 설명 프로젝트는 다음과 같은 구조로 이루어져 있습니다. src/database 폴더: 데이터베이스 관련 파일들을 포함하는 폴더 TableImpl.java: 테이블 구현을 담당하는 클래스 Table.java: 테이블 인터페이스를 정의한 클래스 JoinColumn.java: 조인할 칼럼을 나타내는 클래스 Joinable.java: 조인 가능한 엔티티를 나타내는 인터페이스 Database.java: 데이터베이스..

[Linux] 리눅스 네트워크

네트워크 기초 TCP/IP 프로토콜 프로토콜: 컴퓨터와 컴퓨터 사이에 데이터를 어떻게 주고받을 것인지를 정의한 통신규약 인터넷은 TCP/IP라는 프로토콜에 따라 통신 주소 컴퓨터의 주소: MAC 주소, IP 주소, 호스트명 MAC주소 하드웨어를 위한 주소 MAC 주소는 네트워크 인터페이스 카드(랜 카드)에 저장된 주소로 기본적으로 네트워크 인터페이스 카드가 만들어질 때 부여 MAC 주소는 각 하드웨어를 구별하는 역할을 수행 MAC 주소는 : 이나 - 으로 구분되는 여섯 개의 16진수로 구성되며 총 48bit 앞의 세 자리는 제조사 번호, 뒤의 세 자리는 일련변호 제조사 번호는 국제 표준 기구 중 하나의 IEEE에서 지정 IP 주소 IP 주소는 1바이트 크기의 숫자 네 개로 구성되므로 총 4바이트 TCP/..

[Linux] 리눅스 사용자 관리

사용자 계정 관련 파일 /ect/passwd 파일 사용자 계정 정보가 저장된 기본 파일 로그인 ID: 사용자 계정의 이름 x: 초기 유닉스 시스템에서 사용자 암호를 저장하던 항목(현재는 /etc/shadow에 암호 저장) UID: 사용자 ID 번호로 시스템이 사용자를 구별하기 위해 사용하는 번호 - 일반적으로 0~999번과 65534번은 시스템 사용자를 위한 UID로 예약 - 일반 사용자는 UID 1000번부터 할당(root 계정은 0번) GID: 그룹 ID를 나타낸다. 리눅스에서 사용자는 무조건 한 개 이상의 그룹에 소속 설명: 사용자의 실명이나 부서명, 연락처 등 사용자에 대한 일반적인 정보를 기록 홈 디렉터리: 사용자 계정에 할당된 홈 디렉터리의 절대 경로 로그인 셸: 사용자의 로그인 셸을 지정 /..

728x90
반응형