본문 바로가기

파이썬8

[python] 13305번 - 주유소 문제 파이썬 풀이 기름 값의 최소 비용을 구하는 문제이다. 최소 비용을 저장해두는 변수를 하나 선언한 뒤 이보다 작은 기름 값이 나오면 최소 비용을 갱신한다. 따라서 최소 비용이 갱신되기 전까지는 이전까지의 최소 비용을 이용해 이동을 하고 새로운 최소 비용이 갱신되면 해당 비용으로 이동을 진행하면 된다. import sys from typing import Mapping input = sys.stdin.readline N = int(input().rstrip()) road_length = list(map(int, input().rstrip().split())) oil_price = list(map(int, input().rstrip().split())) result = 0 min_price = oil_p.. 2021. 11. 24.
[python] 1931번 - 회의실 배정 문제 파이썬 풀이 최대 회의 수를 구하기 위해서는 회의시간이 짧은 즉 가장 빨리 끝나는 회의를 배정하면 된다. 계속해서 짧은 회의를 배정하여 사용할 수 있는 회의의 수를 늘리는 것이다. 따라서 회의가 끝나는 시간을 기준으로 살펴본다. 회의가 끝나는 시간이 현재 시간과 가장 가까운 회의를 배정하면된다. import sys input = sys.stdin.readline N = int(input().rstrip()) time_list = [] for i in range(N) : time_list.append(list(map(int, input().rstrip().split()))) time_list.sort(key=lambda x: (x[1], x[0])) count = 0 last_time = 0 for .. 2021. 11. 23.
[python] 1541번 - 잃어버린 괄호 문제 파이썬 문제 풀이 괄호를 이용하여 최소의 결과를 얻어내는 문제이다. 가장 작은 값을 얻기 위한 방법을 간단하게 생각하면 가장 큰 값을 빼주면 된다. 즉 마이너스 연산을 만나면 가장 큰 값을 빼주면 된다. 가장 큰 값을 빼주기위해 마이너스를 만나게 되면 다음 마이너스까지 있는 플러스 연산들을 모두 괄호로 묶어 가장 큰 수를 만들어주면 된다. eval함수를 이용한 코드 : 틀림 import sys input = sys.stdin.readline inputExp = input().rstrip().split("-") resultExp = 0 for index, i in enumerate(inputExp) : if index == 0 : resultExp += eval(i) else : resultExp -.. 2021. 11. 23.
[python]11650-좌표 정렬하기 문제 파이썬 풀이 튜플로 2차원 좌표를 입력받아 리스트 안에 저장한 후, x좌표를 기준으로 오름차순 정렬하는 문제이다. (x좌표가 같을 시 y좌표 비교) import sys input = sys.stdin.readline n= int(input().rstrip()) v = [] for i in range(n) : x, y = map(int, input().rstrip().split()) v.append((x,y)) v.sort() for x,y in v : print(x,y) 시간 복잡도 개선을 위해 input대신 sys.stdin.readline을 사용하였다. 단, readline으로 입력을 받으면 끝에 개행 문자를 가져온다 하여 rstrip을 통해 제거하여주었다. 입력받기 for i in range(.. 2021. 8. 31.