전체 글(217)
-
BAEKJOON #13305 주유소
이 문제의 저작권은 BAEKJOON에 있습니다. https://www.acmicpc.net/problem/13305 풀이 주석참고 # 주유소 # https://www.acmicpc.net/problem/13305 n = int(input()) # 이동에 소요되는 기름 oil = list(map(int, input().split(" "))) # 주유소 기름가격 pay = list(map(int, input().split(" "))) # 다음 주유소까지 필요한 기름을 넣어야하므로 초기값 넣어줌 # 필요한 돈 need_money = oil[0] * pay[0] # 기름 최저가 저장 cheap = pay[0] # 다음 경로까지 필요한 기름 dist = 0 for i in range(1, n-1): # 이전 주유..
2021.05.10 -
SQLAlchemy models.py 자동생성
기존에 만들어져있던 DB의 테이블들을 models.py에 맵핑한다. 클래스명은 테이블명을 대문자로 바꿔서 만들어준다. from sqlalchemy.engine import create_engine from sqlalchemy.schema import MetaData from sqlacodegen.codegen import CodeGenerator url = "mysql+pymysql://{사용할아이디}:{비밀번호}@{000.000.000.000}:{포트번호}/{db이름}" engine = create_engine(url) metadata = MetaData(engine) metadata.reflect(engine) with open('models.py', 'w', encoding='utf-8') as o..
2021.05.06 -
BAEKJOON #2609 최대공약수와 최소공배수
이 문제의 저작권은 BAEKJOON에 있습니다. https://www.acmicpc.net/problem/2609 풀이 유클리드 호제법으로 최대공약수를 구한다. 주어진 두 수를 곱하고 최대공약수로 나누어 최소공배수를 구한다. # 최대공약수와 최소공배수 # https://www.acmicpc.net/problem/2609 A, B = sorted(list(map(int, input().split(" ")))) AB = A * B C = B while A % B != 0: C = A % B A = B B = C print(C) print(int(AB/C))
2021.05.06 -
BAEKJOON #17298 오큰수
이 문제의 저작권은 BAEKJOON에 있습니다. https://www.acmicpc.net/problem/17298 풀이 n크기 만큼의 -1 리스트를 생성 for문으로 n만큼 반복 stack이 존재하고 arr[stack[-1]] < arr[i] 일때 while문 실행 stack의 마지막 요소를 pop하고 answer인덱스로 사용, arr[i]값을 삽입 stack에 현재 i값(인덱스)를 삽입 # 오큰수 # https://www.acmicpc.net/problem/17298 from collections import deque n = int(input()) arr = list(map(int, input().split())) stack = [] # 미리 -1 리스트 생성 answer = [-1 for i in..
2021.05.04 -
BAEKJOON #2579 계단 오르기
이 문제의 저작권은 BAEKJOON에 있습니다. https://www.acmicpc.net/problem/2579 풀이 비어있는 dp, 계단 리스트 생성 3번째 계단까지 미리 계산하고 dp에 삽입 4번째 계단부터 마지막 계단까지 문제에서 주어진 규칙에 따른 최댓값을 구한다. # 계단 오르기 # https://www.acmicpc.net/problem/2579 N = int(input()) # 계단이 최대 300개 까지 있음 dp = [0] * 301 # stairs리스트 미리 생성해서 인덱스 에러 해결 stairs = [0] * 301 for s in range(N): stairs[s] = int(input()) dp[0] = stairs[0] dp[1] = stairs[0] + stairs[1] dp[..
2021.05.03 -
BAEKJOON #1149 RGB거리
이 문제의 저작권은 BAEKJOON에 있습니다. https://www.acmicpc.net/problem/1149 풀이 주어진 집들의 RGB값을 리스트에 삽입 첫번째 집은 이미 칠해져 있으니 for문을 1로해서 두번째 집부터 칠한다. 집마다 주어진 규칙에 따라 색이 겹치지 않도록 값을 구하고 리스트 값을 바꿔준다. # RGB거리 # https://www.acmicpc.net/problem/1149 N = int(input()) RGB_list = [] for _ in range(N): RGB_list.append(list(map(int, input().split(" ")))) # 집마다 칠하는 비용의 최솟값 구하기 for i in range(1, N): # 1번째 칸을 빨간색으로 칠했을 때 RGB_lis..
2021.04.30