백준- 11399( ATM )- Python(파이썬)
반응형
그리디 설명
input().split() : 입력을 공백으로 구별하여 나눔
ex)'1 2 3 4 5' -> [ '1', '2', '3', '4', '5']
map( int, input().split()) : 문자로 처리되어 있는 것을 Int형으로 모두 바꾸기 위해서
map( int, input().split()) = map( int, [ '1', '2', '3', '4', '5'] ) = map ([ 1, 2, 3, 4, 5])
sort 사용
input();#5 숫자 받기
array=list(map(int,input().split()))
array.sort()
count=0
total=0
for i in array:
count+=i
total+=count
print(total)
정렬알고리즘 사용
1. 선택정렬을 이용한 경우 ( Selection Sort )
input();#5 숫자 받기
array=list(map(int,input().split()))
#선택정렬
for i in range(len(array)):
min_index=i
for j in range(i+1,len(array)):
if array[min_index]>array[j]:
min_index=j
array[i],array[min_index]=array[min_index],array[i]
count=0
total=0
for i in array:
count+=i
total+=count
print(total)
2. 삽입정렬을 이용한 경우 ( Insertion Sort )
input();#5 숫자 받기
array=list(map(int,input().split()))
#삽입정렬
for i in range(1,len(array)):
for j in range(i,0,-1):#i에서 1까지 1씩 감소
if array[j]<array[j-1]:
array[j],array[j-1]=array[j-1],array[j]
else:
break
count=0
total=0
for i in array:
count+=i
total+=count
print(total)
반응형
'[백준] Python,Java로 풀기📖 > 그리디' 카테고리의 다른 글
백준 17451(평행 우주) - Python(파이썬) - 그리디 알고리즘 (0) | 2022.06.26 |
---|---|
백준 11000(강의실 배정) - Python(파이썬) - 그리디,정렬(heap, lambda,Comparator) (0) | 2022.06.08 |
백준 19941(햄버거 분배 ) - Python(파이썬) - 그리디 (0) | 2022.06.03 |
백준 2864(5와 6의 차이) - Python(파이썬) (0) | 2022.05.17 |