본문 바로가기

📁 코딩테스트 준비/Python25

[그리디/python]백준 11047번 동전 0 n,k=map(int, input().split()) #list=list(map(int, input().split())) list=[] count=0 for _ in range(n): list.append(int(input())) list.sort(reverse=True) #내림차순정렬 for i in list: if ik일때 통과되게 하고싶었는데 못했음 2. if문 맨 마지막줄에 k==0? k 2023. 4. 28.
[구현 / python] 상하좌우 문제풀이 # 공간의 크기 입력 n = int(input()) # 이동할 계획서 내용 입력 plans = input().split() #초기 좌표 x,y=1,1 # L,R,U,D에 따른 이동 방향 # dx는 행들이므로 y축 이동 # dy는 열들이므로 x축 이동 dx = [0,0,-1,1] dy = [-1,1,0,0] move_types=['L','R','U','D'] # 입력받은 plans의 수 만큼 for plan in plans: #현재 plan과 move_types를 비교하면서 for i in range(len(move_types)): # plan과 현재 move_types가 같으면 수행! if plan == move_types[i]: # dx, dy 만큼 이동 후의 좌표 구하기 nx = dx[i]+.. 2022. 11. 21.
[그리디 / python] 곱하기 혹은 더하기 문제풀이 data=input() #첫번째 문자를 숫자로 변경하여 저장 result=int(data[0]) #첫번째 원소는 위에 저장해놓고 두번째 원소부터 판단! for i in range(1, len(data)): #n번째원소 num에 저장 num=int(data[i]) #두 수가 0이나 1이면 더하기, 아니면 곱하기 #0인 경우만 생각했었는데, 1인 경우 곱하면 +0, 더하면 +1이기 때문 if (result 2022. 11. 11.
[그리디 / python] 모험가 길드 문제풀이 n=map(int, input().split()) data=list(map(int, input().split())) data.sort() result=0 cnt=0 for i in data: cnt+=1 if cnt>=i: result += 1 cnt=0 print(result) 정렬하는 것 까진 생각 했는데,,,^^ㅠ 분발하자... 2022. 11. 11.
[그리디 / python] 1이 될 때까지 ✔️ 문제풀이 1 n,k=map(int, input().split()) cnt=0 while n>=k: while n%k!=0: n-=1 cnt+=1 n//=k cnt+=1 while n>1: n-=1 cnt+=1 print(cnt) 1. n이 k 이상이면 k로 계속 나누기 2. n이 k의 배수가 아니면(n%k!=0이면) 1씩 빼기 3. n이 k의 배수가 되면 k로 나누기 4. 위 반복을 거친 후 마지막으로 남은 수 1씩 빼기(n>1 일 때까지!) 2022. 11. 11.
[그리디 / python] 숫자 카드 게임 문제풀이 1 :min(), max() 함수 이용 n,m=map(int, input().split()) #행,열 입력받음 result=0 for i in range(n): #행만큼 반복 data=list(map(int, input().split())) min_value=min(data) #현재 행에서 최솟값 찾기 result=max(result, min_value) #최솟값들 중 최댓값 찾기 print(result) 문제풀이 2 :이중 반복문 이용 n,m = map(int, input().split()) result=0 for i in range(n): data = list(map(int, input().split())) min_value=10001 for j in data: min_value=min(mi.. 2022. 11. 10.