전체 글

전체 글

    [백준] 15685번: 드래곤 커브 (Python)

    [백준] 15685번: 드래곤 커브 (Python)

    https://www.acmicpc.net/problem/15685 15685번: 드래곤 커브 첫째 줄에 드래곤 커브의 개수 N(1 ≤ N ≤ 20)이 주어진다. 둘째 줄부터 N개의 줄에는 드래곤 커브의 정보가 주어진다. 드래곤 커브의 정보는 네 정수 x, y, d, g로 이루어져 있다. x와 y는 드래곤 커 www.acmicpc.net ✅ Solution 90도를 어떻게 이동시킬지에 대한 아이디어가 중요한 문제였다. 하지만 난 생각 못하고 풀이를 봐버렸다. 하 너무 어렵 예제 1로 예시를 들어보려고 한다. 이동해야 할 방향 4개 (0, 1, 2, 3)을 먼저 생각해 봤다. 0세대 : 0 1세대 : 0 1 2세대 : 0, 1, 2, 1 3세대 : 0, 1, 2, 1, 2, 3, 2, 1 위에서 규칙을 찾..

    [백준] 14891번: 톱니바퀴 (Python)

    [백준] 14891번: 톱니바퀴 (Python)

    https://www.acmicpc.net/problem/14891 14891번: 톱니바퀴 총 8개의 톱니를 가지고 있는 톱니바퀴 4개가 아래 그림과 같이 일렬로 놓여져 있다. 또, 톱니는 N극 또는 S극 중 하나를 나타내고 있다. 톱니바퀴에는 번호가 매겨져 있는데, 가장 왼쪽 톱니바퀴 www.acmicpc.net ✅ Solution 단순 구현 문제였는데, 이해하는데 시간이 좀 걸렸다. 잘못 생각했던 부분이 톱니바퀴가 차례로 움직인다고 생각했던 것! 그래서 3번 톱니바퀴를 회전 -> 2번, 4번 톱니바퀴를 확인한 뒤 회전 -> 또 1번 확인하고... 땡 위의 방법이 아니라 미리 어떤 톱니바퀴가 움직일지 체크한 뒤, 한 번에 회전하도록 코드를 수정했다. 회전시킬 톱니바퀴의 왼쪽 오른쪽을 나눠서 생각했다. ..

    [프로그래머스] Level 4 - 가사 검색 (Python)

    [프로그래머스] Level 4 - 가사 검색 (Python)

    https://school.programmers.co.kr/learn/courses/30/lessons/60060 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr ✅ Solution words를 길이별로 따로 담아두고 query 하나마다 몇 개 있는지 확인한다. 처음에는 그냥 완탐으로 돌렸다. 바로 시간초과 엔딩. 차라리 그냥 틀렸으면 ^^,, 초과 해결하기 빡세 새로운 방법! 와일드카드에는 a부터 z까지 들어갈 수 있다. 그럼 와일드카드에 a를 넣었을 때, 배열 안에서 몇 번째 인덱스에 위치하는지 구하고, z를 넣었을 때 몇 번째 인덱스에 위치하는지 구한..

    [백준] 11404번: 플로이드

    [백준] 11404번: 플로이드

    https://www.acmicpc.net/problem/11404 11404번: 플로이드 첫째 줄에 도시의 개수 n이 주어지고 둘째 줄에는 버스의 개수 m이 주어진다. 그리고 셋째 줄부터 m+2줄까지 다음과 같은 버스의 정보가 주어진다. 먼저 처음에는 그 버스의 출발 도시의 번호가 www.acmicpc.net ✅ Solution 모든 도시 간의 거리를 구하는 문제로, 플로이드 워셜 구현 문제이다. ‼️ 주의 ‼️ 도시 i에서 도시 j로 가는 길은 한 개가 아니다. 여러 개 중에 최솟값을 넣어줘야 한다. 이걸 놓쳐서 계속 틀렸다. 문제 좀 잘 읽자.. TT ✅ Code import sys input = sys.stdin.readline n = int(input()) m = int(input()) dist..

    [백준] 16234번: 인구 이동 (Python)

    [백준] 16234번: 인구 이동 (Python)

    https://www.acmicpc.net/problem/16234 16234번: 인구 이동 N×N크기의 땅이 있고, 땅은 1×1개의 칸으로 나누어져 있다. 각각의 땅에는 나라가 하나씩 존재하며, r행 c열에 있는 나라에는 A[r][c]명이 살고 있다. 인접한 나라 사이에는 국경선이 존재한다. 모 www.acmicpc.net ✅ Solution bfs를 이용해서 모든 나라의 위치에서 국경선을 열 수 있는지 확인한다. 만약 열 수 있다면 연합에 추가하고 각 나라의 인구를 업데이트해 준다. 위 과정을 국경선을 열 수 있는 나라가 없을 때까지 반복한다. ✅ Code import sys input = sys.stdin.readline from collections import deque def bfs(x, y,..

    [프로그래머스] Level 4 - 무지의 먹방 라이브 (Python)

    [프로그래머스] Level 4 - 무지의 먹방 라이브 (Python)

    https://school.programmers.co.kr/learn/courses/30/lessons/42891 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr ✅ Solution 우선순위 큐, heap를 이용하여 문제를 풀었다. 먼저 heapq에 (음식 시간, 음식 번호) 순으로 넣어준다. 그럼 작은 순서대로 정렬이 된다. 이제 queue를 앞에서부터 돌면서 해당 음식을 다 먹기까지 걸리는 시간을 계산해 준다. 이때, 현재까지 걸린 시간 (sum_time)과 해당 음식을 다 먹는 데 걸리는 시간을 더했을 때 k 보다 크다면 탈출하도록 while 문을 작..

    [코딩 테스트] 프로그래머스 2023 Spring Coding 후기

    [코딩 테스트] 프로그래머스 2023 Spring Coding 후기

    2023 프로그래머스 Spring Coding에 지원을 했다! 처음으로 지원해봤는데, 코딩테스트를 통과하면 내 이력서가 기업에 전달되는 방식으로 하나의 자소서로 여러 기업에 지원해 볼 수 있어서 좋았다. 😆😆 준비 코딩 테스트 준비를 다시 시작한지 얼마되지 않아 개념들이 섞여있어 https://school.programmers.co.kr/learn/challenges?tab=all_challenges&order=recent&page=1&partIds=17615%2C6174 코딩테스트 연습 | 프로그래머스 스쿨 개발자 취업의 필수 관문 코딩테스트를 철저하게 연습하고 대비할 수 있는 문제를 총망라! 프로그래머스에서 선발한 문제로 유형을 파악하고 실력을 업그레이드해 보세요! school.programmers...

    [프로그래머스] Level 3 - [카카오 인턴] 보석 쇼핑 (Python)

    [프로그래머스] Level 3 - [카카오 인턴] 보석 쇼핑 (Python)

    https://school.programmers.co.kr/learn/courses/30/lessons/67258 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr ✅ Solution 투 포인터를 이용해서 문제를 풀었다. end를 len(gems)-1까지 증가시키면서 보석을 추가해준다. Counter을 이용해 가진 보석의 종류를 세고 이때 가진 보석의 종류가 전체 보석의 종류와 같을 때, 해당 인덱스를 answer에 추가해준다. 그리고 start를 증가시켜가면서 다시 위 과정을 반복한다. answer을 정렬하고 첫 번째 요소를 리턴한다. ✅ Code from..