정렬 4

[백준]1036 36진수 #그리디#자릿수#정렬

1. 풀이 (1) 각 숫자별(0~35) 자릿수에 의한 값을 저장해놓는 배열을 만든다. ex) AB 3C 수 (i) 0 1 2 3 4 5 6 7 8 9 10 A B c ... Z 자릿수 값(v[i]) 0 0 0 36 0 0 0 0 0 0 0 36 1 1 0 0 (2) 35로 바꿨을 때 가장 차이가 큰 수부터 차례대로 35로 바꾼다. 즉 수가 i이고, 그 수의 자릿수 값이 v[i]일때, (35-i)*v[i] 가 큰 순서대로 값을 바꾼다. * 그냥 v[i]가 작은것 부터 해서 틀렸음! 2. 소스코드 N=int(input()) L=[] for i in range(N): L.append(input()) K=int(input()) digit=[[i,0] for i in range(36)] def toThree(nu..

알고리즘/수학 2020.06.27

[백준]1826 연료 채우기 #그리디#힙#정렬

1. 풀이 (1) 주유소의 위치를 기준으로 가까운 순으로 정렬을 한다. (2) 현재위치에서 최대로 갈 수 있는 위치를 확인한다 - 갈 수 있는 위치가 도착지점을 넘으면 -> 종료 - 넘지 않으면 -> 갈 수 있는 위치까지의 주유소 중 가장 주유를 많이 할 수 있는 곳에서 주유 (3) 주유한 만큼 위치이동 (4) (2),(3)을 반복 2. 소스코드 import heapq import sys from collections import deque N=int(input()) point=[] for i in range(N): a,b=map(int,sys.stdin.readline().rstrip().split()) point.append([a,b]) L,P=map(int,input().split()) point...

알고리즘/수학 2020.06.14