본문 바로가기

전체 글714

[구름톤 챌린지] 12일차 - 발전기 [Python] 풀이 집에 전력을 공급하기 위해서는 그 집에 발전기를 설치하거나, 해당 집 주변에 전력이 공급되고 있는 집이 있어야 한다. 즉, 상하좌우로 붙어있는 집의 그룹이 몇 개인지 구하는 문제이다. 그룹의 갯수만큼 발전기가 필요하기 때문이다. bfs로 풀이했다. 최적화 테크는 여러 방식이다. 마을 정보를 입력받을 때 집의 위치를 저장해도 되고 마을 전부를 탐색해도 된다. 하지만, 입력 조건에서는 집이 0개일수도, 최대 N^2일 수도 있기 때문에 저장하는 방식보단 빠르게 탐색하는 방식을 선택했다. bfs로 이어진 집을 전부 탐색한 다음 그룹의 갯수를 세주어 출력하는 방식으로 풀이했다. 집 이고(graph[nx][ny] == 1), 방문하지 않은 집(not visited[nx][ny])을 대상으로 queue에 넣어줬.. 2023. 8. 29.
[구름톤 챌린지] 11일차 - 통증 (2) [Python] 풀이 A와 B는 서로 배수가 아니지만, A < B이므로 B가 최대한 많은 갯수부터 시작해 점차 A의 갯수를 늘리는 방법으로 통증 수치가 0이 되는 비율을 찾으면 된다. N을 A로 나누었을 때 까지의 몫까지의 수에 대해서만 탐색을 하면 충분하다. 만약, 위 두 조건문에 해당되지 않았다면, A와 B의 비율을 어떻게 하든 절대 통증 수치를 0으로 만들 수 없으므로 -1을 출력하자. 출처 구름LEVEL 난이도별 다양한 문제를 해결함으로써 SW 역량을 향상시킬 수 있습니다. level.goorm.io 2023. 8. 29.
[구름톤 챌린지] 10일차 - GAME_OVER [Python] 풀이 goorm 과 player의 시작좌표를 입력받고 형식으로 어떤 방향으로 몇칸 움직여야 하는지 적혀있는 보드가 주어진다. 먼저 방향과 이동할 칸의 수를 분리해주자. 칸을 이동하며 기존에 방문한 칸이 나오거나 모든 칸을 전부 탐색할 때 까지 탐색을 진행해야 한다. 만약 탐색 중 이미 방문한 칸이 나왔다면 게임이 끝났으니 탐색을 멈추고, 모든 점수를 합해서 반환하면 된다. 이제 goorm과 player의 점수를 알 수 있으니 출력형식에 맞추어 정답을 출력하자. 출처 구름LEVEL 난이도별 다양한 문제를 해결함으로써 SW 역량을 향상시킬 수 있습니다. level.goorm.io 2023. 8. 29.
[구름톤 챌린지] 9일차 - 폭탄 구현하기(2) [Python] 풀이 K개의 폭탄에 대해 폭탄을 떨어트린 장소 (x, y)와 인접한 장소에 대해 아래와 같이 값을 증가시키면 된다. '#'이 아니고, '@' 인 경우 2만큼 증가시킨다. '#'이 아니고, '@' 가 아닌경우 1만큼 증가시킨다. 폭탄의 위치가 0 ~ N - 1이 아닌, 1 ~ N이므로 점수를 기록할 보드를1칸씩 넓게 선언해주자. 점수를 기록한 보드에서 최댓값을 찾아 출력해주면 된다. 출처 구름LEVEL 난이도별 다양한 문제를 해결함으로써 SW 역량을 향상시킬 수 있습니다. level.goorm.io 2023. 8. 29.
[백준 26332] Buying in Bulk [Python] 풀이 쇼핑을 할 때 1개를 살 때는 할인이 되지 않은 금액에 구매하지만, 2개 이상 부터는 추가 품목에 대해 2$씩 할인이 된다. c - 1 개 만큼 2$씩 원가에서 뺀 가격을 입력값과 함께 출력해주자. 소스코드 소스코드 보기 출처 26332번: Buying in Bulk The first input line contains a positive integer, n, indicating the number of customers to check. The customers are on the following n input lines, one customer per line. Each line provides two integers; the first integer c (1 ≤ c ≤ 100) is the .. 2023. 8. 29.
[백준 26068] 치킨댄스를 추는 곰곰이를 본 임스 2 [Python] 풀이 N개의 기프티콘의 유효기간이 90일이하의 기프티콘 개수를 세주면 된다. 소스코드 소스코드 보기 출처 26068번: 치킨댄스를 추는 곰곰이를 본 임스 2 첫 번째 줄에는 임스가 받은 기프티콘의 개수 정수 $N$이 주어진다. ($1 \le N \le 1\,000$) 두 번째 줄부터 $N$개의 줄에 걸쳐 $i$번째 기프티콘의 남은 유효기간 $x_i$가 D-xi 와 같은 형식으로 주어진다. ( www.acmicpc.net 2023. 8. 29.