본문 바로가기

Algorithm89

[백준] 1931번 회의실배정 문제를 똑바로 안읽어서 조금 헤멧다... (이상하게 문제를 풀어가지고... 잘못 이해하고..) 그리고 답을 맞추긴하는데.. 이것도 첨에 풀었던 방법은 시초였다... 시초를 안뜨게 하는 방법으로는 시작시간과 종료시간을 둘다 정렬해서 푸는게 답이였다 난 하나만 정렬하고 일일히 계산하는 방법으로 푸니 당연히... 그럴수밖에.. 한번에 못풀어도... 서서히 늘겠지.. import sys def greedy(T): counter = 1 tempVal = T[0][1] for i in range(1, N): if T[i][0] >= tempVal: tempVal = T[i][1] counter += 1 return counter N = int(sys.stdin.readline()) T = [] for i in ra.. 2020. 10. 16.
[백준] 14916 거스름돈 뭔가 알듯말듯했는데.. 뭐 어느 정도선까지 올랐던거 같은데.. 뭔가 잡힐듯 말듯하네.. 그래도 아예 감도 안오는것보다 잡힐듯 말듯한게 낫겠지.. 일단 BFS로 풀었다가 시초나왔다.. 시도해서 답을 맞춘게 대단하네... 물론 시초였지만;; 많이 늘은거 같다 def greedy(N): ans = 0 while True: if N == 0: return ans if N < 0: return -1 t1 = N % 5 if t1 == 0: ans += N // 5 return ans else: N = N - 2 ans += 1 print(greedy(int(input()))) 2020. 10. 16.
[백준] 11399번 ATM ... 내공이 부족한거 같다.. 자꾸 문제를 너무 어렵게 풀려고한다.. 어쩌피 최소값을 찾는거 정렬해서 더하면 되는데... 나무아미타불... N = int(input()) P = sorted(list(map(int, input().split()))) ans = 0 for i in range(N): ans += sum(P[:i+1]) print(ans) 2020. 10. 13.
[프로그래머스] 체육복 def solution(n, lost, reserve): answer = 0 answer += (n - len(lost)) nReserve = [] for i in range(len(reserve)): temp = reserve[i] if temp in lost: lost.remove(temp) answer += 1 else: nReserve.append(temp) for i in range(len(lost)): for j in range(len(nReserve)): if abs(lost[i] - nReserve[j]) == 1: answer += 1 nReserve[j] = -2 break return answer 엄청 헤멧다... 왜냐... 여벌의 체육복을 가져온 애들이 lost에 있을 수 있다는걸 .. 2020. 10. 9.