파이썬으로 알고리즘 문제를 풀다가 문뜩 파이썬에 대해 개념은 알아야할 것 같아서 쓰는 글이다. 인터프리터 Python에 대해 알아보기 전에 인터프리터에 대해 알아보자면, 소스코드를 기계어로 컴파일해서 실행파일을 만들고 실행하는 컴파일 언어와는 달리 인터프리터 언어는 코드를 한 줄씩 읽어 내려가며 실행하는 프로그래밍 언어이다. Python은 인터프리터 방식을 사용하는 프로그래밍 언어이다. 인터프리터의 장점 인터프리터는 실행 시마다 소스 코드를 한 줄씩 기계어로 번역하는 방식이기 때문에 실행 속도는 컴파일 언어보다 느리다. 하지만 프로그램 수정이 간단하다. 컴파일러는 소스 코드를 번역해서 실행 파일을 만들기 때문에 프로그램에 수정 사항이 발생하면 소스 코드를 다시 컴파일 해야한다. 인터프리터는 소스 코드를 ..
문제 www.acmicpc.net/problem/14650 14650번: 걷다보니 신천역 삼 (Small) 욱제는 ‘삼’이란 음절을 참 좋아한다. 인삼, 홍삼, 해삼, 삼성, 이춘삼(李春森), 삼식이, 삼시세끼, ㄴㄴ 그거 안 삼, 삼과 죽음, 알았삼, 금강삼도 식후경, 걷다보니 신천역 삼, 그리고 특히 일 www.acmicpc.net 풀이 및 소스코드 맨 큰 자리수에 0이 들어가지 않는 것만 주의해서 풀면 된다. 한자리씩 차곡차곡 쌓아가되, 만든 수의 자리수와 입력받은 n이 같으면 함수가 끝나도록 재귀를 돌린다. import sys sys.setrecursionlimit(1000000) N = int(input().rstrip()) res = 0 def make_num(n, sum): global re..
문제 www.acmicpc.net/problem/5545 5545번: 최고의 피자 첫째 줄에 토핑의 종류의 수 N(1 ≤ N ≤ 100)이 주어진다. 둘째 줄에는 도우의 가격 A와 토핑의 가격 B가 주어진다. (1 ≤ A, B ≤ 1000) 셋째 줄에는 도우의 열량 C가 주어진다. (1 ≤ C ≤ 10000) 다음 줄 www.acmicpc.net 풀이 및 소스코드 그리디 알고리즘이다. 토핑의 열량을 입력 받은 후에 내림차순으로 정렬해준다. 먼저 토핑을 선택하지 않았을 경우, 즉 순수하게 도우만 선택한 경우의 1원당 열량의 값을 res 에 넣어두고 시작한다. 토핑의 열량을 높은 것 부터 차례로 넣어보면서 1원당 열량의 값이 감소할 때까지 반복한다. 감소한다면 그 전까지의 res 값을 출력하고 종료해준다. ..
문제 www.acmicpc.net/problem/1759 풀이 및 소스코드 입력받은 알파벳을 정렬해준 후, combinations를 통해 경우의 수를 만들어주고 자음 모음의 개수만 카운트해서 조건에 맞다면 출력해주면 된다. import sys from itertools import combinations input = sys.stdin.readline l, c = map(int, input().split()) alph = list(map(str, input().split())) alph.sort() comb = combinations(alph, l) moum = ['a', 'e', 'i', 'o', 'u'] res = [] for c in comb: j = 0 m = 0 for i in range(l):..
힙은 Min Heap과 Max Heap으로 나눌 수 있다. 힙은 세 가지 특징을 가진다. - Min Heap인 경우 루트노드가 항상 최소값, Max Heap인 경우 루트노드가 항상 최댓값을 가진다. - Max Heap(Min) 내의 임의의 노드를 루트로 하는 서브트리 또한 Max Heap(Min)이다. - 완전 이진 트리여야한다. 따라서 m 번 노드의 왼쪽 자식 노드는 2m+1번이고, 오른쪽 자식 노드는 2m+2번이다. 힙의 장점 삽입/삭제 연산이 BST보다 빠르다. 시간 복잡도는 O(log n)으로 동일하지만 힙은 무조건 완전이진트리이므로 모든 삭제/삽입 연산이 배열의 가장 끝에서 발생한다. heapq 모듈 사용 heapq 모듈은 이진트리(Binary tree) 기반의 최소 힙(min heap) 자료구..
이클립스 사용 시, 아래와 같은 경고가 발생할 경우 Build path specifies execution environment JavaSE-1.6. warning. There are no JREs installed in the workspace that are strictly compatible with this environment. Warning 제거 법 1. 프로젝트 Properties 메뉴 클릭 2. Java Build Path 클릭 > Libraries tab 클릭 3. 'JRE System Library' 제거 4. 우측 Add Library... 버튼 클릭 > JRE System Library 선택 > Next 버튼 클릭 경고가 제거 되었다 !! !!!!!!!!!!!!!!!
JDBC(Java Database Connectivity) : 자바를 이용한 데이터베이스 접속과 SQL 문장의 실행, 그리고 실행 결과로 얻어진 데이터의 핸들링을 제공하는 방법과 절차에 관한 규약 자바 프로그램 내에서 SQL 문을 실행하기 위한 자바 API JDBC를 이용한 프로그래밍 방법 1. import java.sql.*; 2. 드라이버를 로드한다. Class.forName( "com.mysql.jdbc.Driver" ); 3. Connection 객체를 생성한다. String dburl = "jdbc:mysql://localhost/dbName"; Connection con = DriverManager.getConnection ( dburl, ID, PWD ); 소스코드 예제 public stat..
- Total
- Today
- Yesterday
- 백준 17144
- 프로그래머스
- 백준 dp 문제
- 백준파이썬
- 프로그래머스 파이썬
- 삼성청년SW아카데미
- poker swea
- 프로그래머스 자바
- 백준
- 백준 풀이
- 1240 자바
- swea 타일링
- 더 맵게
- SWEA
- 3996 자바
- 타일링 자바
- swea 4070 타일링
- swea 1240 자바
- 파이썬
- yoloV3
- SSAFY
- ubuntu
- 1699 자바
- swea 타일링 자바
- union-find
- swea 1240
- 우분투
- 프로그래머스 더 맵게
- 파이썬 풀이
- 메뉴리뉴얼 풀이
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |