반응형

2023/09/03 8

[구름톤 챌린지] Day 15 - 과일 구매(그리디)

https://level.goorm.io/exam/195697/%EA%B3%BC%EC%9D%BC-%EA%B5%AC%EB%A7%A4/quiz/1 구름LEVEL 난이도별 다양한 문제를 해결함으로써 SW 역량을 향상시킬 수 있습니다. level.goorm.io 문제 # 1개만 샀을때 가장 큰 값을 먼저 구매한다(딕셔너리를 새로 만들어서 1개당 가격을 구하고, 밸류로 정렬/ 여기서 딕셔너리는 1개당 가격 : 갯수) # 그리고 최대가격을 넘어가면 스탑 n,k = map(int,input().split()) per_price = [] for _ in range(n): p,c = map(int,input().split()) per_price.append((c//p,p)) # 포용감과 갯수 per_price = sor..

알고리즘 2023.09.03

[구름톤 챌린지] Day 14 - 작은 노드(그래프)

https://level.goorm.io/exam/195696/%EC%9E%91%EC%9D%80-%EB%85%B8%EB%93%9C/quiz/1 구름LEVEL 난이도별 다양한 문제를 해결함으로써 SW 역량을 향상시킬 수 있습니다. level.goorm.io 문제 풀이 n,m,k = map(int,input().split()) graph = [[]*(n+1) for _ in range(n+1)] for _ in range(m): a,b = map(int,input().split()) graph[a].append(b) graph[b].append(a) cnt = 1 visited = [0]*(n+1) num = [] num.append(k) # 왔다갔다할 리스트 visited[k] = 1 # 방문처리 whil..

알고리즘 2023.09.03

[구름톤 챌린지] Day 13 - 발전기2(DFS)

https://level.goorm.io/exam/195695/%EB%B0%9C%EC%A0%84%EA%B8%B0-2/quiz/1 구름LEVEL 난이도별 다양한 문제를 해결함으로써 SW 역량을 향상시킬 수 있습니다. level.goorm.io 문제 풀이 from collections import deque n,k = map(int,input().split()) arr = [list(map(int,input().split())) for _ in range(n)] ans = [0]*(max(set(sum(arr,[])))+1) dx = [-1,1,0,0] dy = [0,0,-1,1] dq = deque() for i in range(n): for j in range(n): if arr[i][j] > 0: nu..

알고리즘 2023.09.03

[구름톤 챌린지] Day 12 - 발전기(DFS)

https://level.goorm.io/exam/195694/%EB%B0%9C%EC%A0%84%EA%B8%B0/quiz/1 구름LEVEL 난이도별 다양한 문제를 해결함으로써 SW 역량을 향상시킬 수 있습니다. level.goorm.io 문제 풀이 import copy from collections import deque n = int(input()) dx = [-1,1,0,0] dy = [0,0,-1,1] arr = [list(map(int,input().split())) for _ in range(n)] visited = copy.deepcopy(arr) dq = deque() cnt = 0 for i in range(n): for j in range(n): if arr[i][j] == 1: dq.a..

알고리즘 2023.09.03

[구름톤 챌린지] Day 11 - 통증2(동적 프로그래밍)

https://level.goorm.io/exam/195693/%ED%86%B5%EC%A6%9D-2/quiz/1 구름LEVEL 난이도별 다양한 문제를 해결함으로써 SW 역량을 향상시킬 수 있습니다. level.goorm.io 문제 풀이 동적프로그래밍 문제로 재귀함수를 이용해서 풀어야하는 것이 정석인데 구현으로 풀게 되었다. DP로 푸는 방법도 알아두자. # 1. 작은수로 나누어지거나 안나누어질때는 바로 결과값 return # 2. 큰수보다 작은 n인데 a로 나누어지면 몫, 안나누어지면 -1 # 3. n이 b보다 클때, 최대 몫 구하고 그 나머지가 a로 나누어지면 몫 더하기 안된다면 몫에서 -1하면서 a로 나누어지는지 확인 import copy def sol(): n = int(input()) a,b = ..

알고리즘 2023.09.03

[구름톤 챌린지] Day 10 - GameJam(시뮬레이션)

https://level.goorm.io/exam/195692/gamejam/quiz/1 구름LEVEL 난이도별 다양한 문제를 해결함으로써 SW 역량을 향상시킬 수 있습니다. level.goorm.io 문제 풀이 n = int(input()) arr_g = [[0]*n for _ in range(n)] arr_p = [[0]*n for _ in range(n)] g1,g2 = map(int,input().split()) g1-= 1 g2-= 1 arr_g[g1][g2] = 1 p1,p2 = map(int,input().split()) p1 -= 1 p2 -= 1 arr_p[p1][p2] = 1 act = [list(input().split()) for _ in range(n)] def gr(): glob..

알고리즘 2023.09.03

[구름톤 챌린지] Day 9 - 폭탄 구현하기(2)

https://level.goorm.io/exam/195691/%ED%8F%AD%ED%83%84-%EA%B5%AC%ED%98%84%ED%95%98%EA%B8%B0-2/quiz/1 구름LEVEL 난이도별 다양한 문제를 해결함으로써 SW 역량을 향상시킬 수 있습니다. level.goorm.io 문제 풀이 n,k = map(int,input().split()) arr = [list(input().split()) for _ in range(n)] score = [ [0]*n for _ in range(n)] dx = [-1,1,0,0,0] dy = [0,0,-1,1,0] for _ in range(k): y,x = map(int,input().split()) y -= 1 x -= 1 for h in range(..

알고리즘 2023.09.03

[구름톤 챌린지] Day 8 - 통증

https://level.goorm.io/exam/195690/%ED%86%B5%EC%A6%9D/quiz/1 구름LEVEL 난이도별 다양한 문제를 해결함으로써 SW 역량을 향상시킬 수 있습니다. level.goorm.io 문제 풀이 n = int(input()) res = 0 while n>=14: if n>=14: res += n//14 n %= 14 while n>=7: if n>=7: res += n//7 n %= 7 res += n print(res) 1. 14로 먼저 몫을 구하고 남은 값을 7로 반복 나머지를 추가하면 통증 계산 2. while문이 아니라 if만으로 가능함(한번 연산)

알고리즘 2023.09.03
반응형