01강 데이터베이스 mySQL 준비 mySQL 을 설치하고 실행시킨 모습이다. DB를 선택해 사용한다는 명령을 하기 전에 SQL 명령을 실행시키면, 선택된 DB가 없다는 오류가 나기 때문에 use 명령을 먼저 사용해 주어야 한다. 데이터베이스 데이터의 집합, 여기서 데이터는 컴퓨터 안에 기록되어 있는 숫자를 의미한다. 데이터베이스 내 데이터는 영구적 보존되어야 하기 때문에 비휘발성 저장장치(하드디스크, SSD)에 저장된다. DB와 DBMS DBMS(Database Management System)은 데이터베이스 관리 시스템이다. 데이터베이스를 효율적으로 관리하는 역할을 한다. 1. 생산성 생산성이란 토지, 자원, 노동력 따위 생산의 여러 요소들이 투입된 양과 그것으로써 이루어진 생산물 산출량의 비율이다...
- 구현 담당 부분 할 일 목록 표시 할 일 DB에 추가, 수정, 삭제 날짜별, id 별로 목록 표시 실행 영상 https://github.com/seungmio/todoListApp GitHub - seungmio/todoListApp Contribute to seungmio/todoListApp development by creating an account on GitHub. github.com
회의실 배정(1931) [문제] 한 개의 회의실이 있는데 이를 사용하고자 하는 N개의 회의에 대하여 회의실 사용표를 만들려고 한다. 각 회의 I에 대해 시작시간과 끝나는 시간이 주어져 있고, 각 회의가 겹치지 않게 하면서 회의실을 사용할 수 있는 회의의 최대 개수를 찾아보자. 단, 회의는 한번 시작하면 중간에 중단될 수 없으며 한 회의가 끝나는 것과 동시에 다음 회의가 시작될 수 있다. 회의의 시작시간과 끝나는 시간이 같을 수도 있다. 이 경우에는 시작하자마자 끝나는 것으로 생각하면 된다. [입력] 첫째 줄에 회의의 수 N(1 ≤ N ≤ 100,000)이 주어진다. 둘째 줄부터 N+1 줄까지 각 회의의 정보가 주어지는데 이것은 공백을 사이에 두고 회의의 시작시간과 끝나는 시간이 주어진다. 시작 시간과 끝..
동전 0(11047) [문제] 준규가 가지고 있는 동전은 총 N종류이고, 각각의 동전을 매우 많이 가지고 있다. 동전을 적절히 사용해서 그 가치의 합을 K로 만들려고 한다. 이때 필요한 동전 개수의 최솟값을 구하는 프로그램을 작성하시오. [입력] 첫째 줄에 N과 K가 주어진다. (1 ≤ N ≤ 10, 1 ≤ K ≤ 100,000,000) 둘째 줄부터 N개의 줄에 동전의 가치 Ai가 오름차순으로 주어진다. (1 ≤ Ai ≤ 1,000,000, A1 = 1, i ≥ 2인 경우에 Ai는 Ai-1의 배수) [출력] 첫째 줄에 K원을 만드는데 필요한 동전 개수의 최솟값을 출력한다. [입력 예시] 10 4200 1 5 10 50 100 500 1000 5000 10000 50000 [출력 예시] 6 [내 풀이] n..
6098 : [기초-리스트] 성실한 개미(py) [문제] 영일이는 생명과학에 관심이 생겨 왕개미를 연구하고 있었다. 왕개미를 유심히 살펴보던 중 특별히 성실해 보이는 개미가 있었는데, 그 개미는 개미굴에서 나와 먹이까지 가장 빠른 길로 이동하는 것이었다. 개미는 오른쪽으로 움직이다가 벽을 만나면 아래쪽으로 움직여 가장 빠른 길로 움직였다. (오른쪽에 길이 나타나면 다시 오른쪽으로 움직인다.) 이에 호기심이 생긴 영일이는 그 개미를 미로 상자에 넣고 살펴보기 시작하였다. 미로 상자에 넣은 개미는 먹이를 찾았거나, 더 이상 움직일 수 없을 때까지 오른쪽 또는 아래쪽으로만 움직였다. 미로 상자의 구조가 0(갈 수 있는 곳), 1(벽 또는 장애물)로 주어지고, 먹이가 2로 주어질 때, 성실한 개미의 이동 경로를..
6097 : [기초-리스트] 설탕과자 뽑기(py) [문제] 부모님과 함께 놀러간 영일이는 설탕과자(설탕을 녹여 물고기 등의 모양을 만든 것) 뽑기를 보게 되었다. 길이가 다른 몇 개의 막대를 바둑판과 같은 격자판에 놓는데, 막대에 있는 설탕과자 이름 아래에 있는 번호를 뽑으면 설탕과자를 가져가는 게임이었다. (잉어, 붕어, 용 등 여러 가지가 적혀있다.) 격자판의 세로(h), 가로(w), 막대의 개수(n), 각 막대의 길이(l), 막대를 놓는 방향(d:가로는 0, 세로는 1)과 막대를 놓는 막대의 가장 왼쪽 또는 위쪽의 위치(x, y)가 주어질 때, 격자판을 채운 막대의 모양을 출력하는 프로그램을 만들어보자. [입력] 첫 줄에 격자판의 세로(h), 가로(w) 가 공백을 두고 입력되고, 두 번째 줄에 놓을..
6096 : [기초-리스트] 바둑알 십자 뒤집기(py) [문제] 부모님을 기다리던 영일이는 검정/흰 색 바둑알을 바둑판에 꽉 채워 깔아 놓고 놀다가... "십(+)자 뒤집기를 해볼까?"하고 생각했다. 십자 뒤집기는 그 위치에 있는 모든 가로줄 돌의 색을 반대(1->0, 0->1)로 바꾼 후, 다시 그 위치에 있는 모든 세로줄 돌의 색을 반대로 바꾸는 것이다. 어떤 위치를 골라 집자 뒤집기를 하면, 그 위치를 제외한 가로줄과 세로줄의 색이 모두 반대로 바뀐다. 바둑판(19 * 19)에 흰 돌(1) 또는 검정 돌(0)이 모두 꽉 채워져 놓여있을 때, n개의 좌표를 입력받아 십(+)자 뒤집기한 결과를 출력하는 프로그램을 작성해보자. [입력] 바둑알이 깔려 있는 상황이 19 * 19 크기의 정수값으로 입력된다...
✔️ code def solution(lottos, win_nums): answer = [] score_top=0 #일치하는 숫자 개수(최고 순위 일 때) score_bottom=0 #일치하는 숫자 개수(최저 순위 일 때) #일치하는 숫자 개수 계산 score_top += lottos.count(0) for i in win_nums: if i in lottos: score_top+=1 score_bottom+=1 #일치하는 숫자 개수:등수 dic = {6:1, 5:2, 4:3, 3:4, 2:5, 1:6, 0:6} answer.append(dic[score_top]) answer.append(dic[score_bottom]) return answer #solve: 일치하는 숫자 개수가 최고점일 때, 최저점..
✔️ 수정 전 code def solution(arr, divisor): answer = [] for x in arr: if x%divisor==0: answer.append(x) if len(answer)==0: answer.append(-1) answer.sort() return answer 📍 리스트가 비어있는지 확인하는 방법 ① len() 메소드 사용 if len(list)==0: print("List Empty") if len(list)!=0: print("List not Empty") // 리스트의 길이를 return 하는 len() 메소드 사용 ② bool return 값 사용 if list: print("List not Empty") if not list: print("List Empty"..
📍 후위표기식 연산자가 피연산자 뒤에 있는 표기식 A+(B*C) -> ABC*+ : 연산자는 stack 에 append() 하거나 pop() 하고 피연산자는 그대로 출력하여 해결한다. 3+5*2/(7-2) ✔️ code import sys sys.stdin=open("input.txt", "rt") arr=input() operator=['+', '-', '*', '/', '(', ')'] stack=[] #연산자를 담는 stack result='' #후위표기식 for x in arr: if x not in operator: result+=x else: if x=='(': stack.append(x) elif x=='*' or x=='/': while stack and (stack[-1]=='*' or ..