코딩/백준
-
[백준] 2217.로프코딩/백준 2022. 5. 3. 02:08
생각 과정 로프 개수가 많을 수록 각 로프가 부담해야할 중량은 줄어든다. 우리가 뽑은 로프들이 최대로 들 수 있는 중량은 제일 약한 로프에게 달려있다. 많은 개수의 로프를 사용해서 중량을 많이 나눌지, 아니면 에이스들 만 뽑아서 중량을 나눌지 알아봐야 한다. rope =[] N = int(input()) for i in range(0,N): WT = int(input()) rope.append(WT) rope = sorted(rope,reverse=False) # 중량은 제일 약한 로프에게 달려있다. find_WT = [] for i in range(0,len(rope)): find_WT.append(rope[i]*(N-i)) # 로프 조합으로 중량을 들 수 있는 모든 경우의 수 print(max(fin..
-
[백준] 1439. 뒤집기코딩/백준 2022. 4. 30. 20:12
생각과정 '01' 혹은 '10' 이면 뒤집어야 한다. 입력받은 문자열 중 '01'과 '10'을 카운트 한다 '01' 과 '10' 카운트 중 최대가 최소 횟수 EX) 0000011111 -> '01' : 1 , '10' : 0 최소 횟수 = 1 EX) 0000111000 -> '01' : 1 , '10' : 1 최소 횟수 = 1 EX) 0110110001 -> '01' : 3 , '10' : 2 최소 횟수 = 3 S = input() count_0 = 0 # '01' 카운트 count_1 = 0 # '10' 카운트 for i in range(len(S)-1): if S[i] != S[i+1] and S[i]=='0': # '01'찾기 count_0 = count_0+1 elif S[i] != S[i+1] ..
-
[백준] 9237.이장님의 초대코딩/백준 2022. 4. 30. 19:55
생각 과정 이장님에게 모든 나무가 다 자라야 보여줄 수 있으니 자라는데 걸리는 시간이 긴 나무 부터 먼저 심는다 그렇게 나무들을 심고나면, 제일 늦게 자라는 나무를 기준으로 그 다음날 이장님을 불러본다 N = int(input()) # N: 묘목 구입 개수 trees = list(map(int,input().split())) #각 나무가 자라는 시간 리스트 trees = sorted(trees,reverse=True) # 내림차순 정렬 day_tree = [] for i in range(0,N): day_tree.append(trees[i] - N + i+1) #정렬된 나무가 각자 걸리는 시간을 리스트에 담음 print(max(day_tree) + N +1) # 정렬했을때 최대 자라는 날 + 나무를 심는..