본문 바로가기

📁 코딩테스트 준비35

[그리디 / python] 큰 수의 법칙 ✔️문제풀이 1 :단순하게 푸는 방법 n,m,k = map(int, input().split()) data=list(map(int, input().split())) data.sort() first=data[n-1] #가장 큰 수 second=data[n-2] #두번째로 큰 수 result=0 while True: #가장 큰 수 k번 더하기 for i in range(k): if m==0: break result+=first #첫번째로 큰 수 더하기 m-=1 #더할 때마다 1씩 빼기 #k번 더한 후 if m==0: #m이 0이면 반복문 탈출 break # m이 0이 아니라면 두번째로 큰 수를 한 번 더하기 result+=second m-=1 #더할 때마다 1씩 뺴기 print(result) 가장 큰 수를 .. 2022. 11. 10.
[그리디 / python] 거스름돈 문제풀이 n=int(input()) count=0 coin_types = [500,100,50,10] for coin in coin_types: count+=n//coin n%=coin print(count) *그리디 알고리즘 적용이 가능한 이유 가지고 있는 동전 중, 큰 단위가 항상 작은 단위의 배수이므로, 작은 단위의 동전들을 종합해 다른 해가 나올 수 없다! 2022. 11. 10.
[SWEA / python] 1936. 1대1 가위바위보 (D1) ✔️문제풀이 a,b = map(int, input().split()) if a==1: if b==2: print('B') elif b==3: print('A') elif a==2: if b==1: print('A') elif b==3: print('B') elif a==3: if b==1: print('B') elif b==2: print('A') if문으로 비교 2022. 11. 9.
[SWEA / python] 1545. 거꾸로 출력해 보아요 (D1) ✔️ 문제풀이 test_case = int(input()) for i in reversed(range(0,test_case+1)): print(i, end=" ") 1. step인자를 음수로 지정하는 방법 >>> print(list(range(10, 0, -1))) [10, 9, 8, 7, 6, 5, 4, 3, 2, 1] 위와 같이 step인자를 음수로 지정하면 숫자가 줄어드는 range객체로 만들 수 있다. * 이 때, start 인자의 값이 stop인자의 값보다 작거나 같으면 빈 범위가 되므로 주의해야됨! 2. reversed()함수 사용 첫 번째 방법은 헷갈릴 수 있으므로 reversed()함수를 사용하여 range객체를 역순 정렬할 수 있다. 📌 오답노트 test_case = int(input().. 2022. 11. 8.
[SWEA / python] 2046. 스탬프 찍기 (D1) 문제풀이 test_case = int(input()) for i in range(test_case): print('#',end="") for문만 사용하면 풀 수 있음 2022. 11. 8.
[SWEA / python] 2047. 신문 헤드라인 (D1) 문제풀이 arr=input() for i in arr: result=arr.upper() print(result) 1. 문자열 대문자로 변경하는 함수 (string.upper) 2. 문자열 소문자로 변경하는 함수 (string.lower) 3. 문자가 대문자인지 확인하는 함수 (string.isupper) 4. 문자가 소문자인지 확인하는 함수 (string.islower) 2022. 11. 8.