알고리즘
-
[JAVA] 백준 21610 마법사 상어와 비바라기알고리즘/삼성 역량 문제 2023. 3. 12. 17:01
1. 문제 링크 https://www.acmicpc.net/problem/21610 21610번: 마법사 상어와 비바라기 마법사 상어는 파이어볼, 토네이도, 파이어스톰, 물복사버그 마법을 할 수 있다. 오늘 새로 배운 마법은 비바라기이다. 비바라기를 시전하면 하늘에 비구름을 만들 수 있다. 오늘은 비바라기 www.acmicpc.net 2. 문제 요약 # 초기 비구름 생성: (N, 1), (N, 2), (N-1, 1), (N-1, 2) 명령대로 아래 순서 진행 1. 모든 구름이 di 방향으로 si칸 이동한다. 2. 각 구름에서 비가 내려 구름이 있는 칸의 바구니에 저장된 물의 양이 1 증가한다. 3. 구름이 모두 사라진다. 4. 마법 시전 - 2번에서 구름이 존재한 곳에서 대작선 거리 1인 칸에 있는 수만..
-
[Python] leetcode Valid Palindrome알고리즘/leetcode 2022. 3. 8. 01:12
1. 문제 링크 https://leetcode.com/problems/valid-palindrome/submissions/ Valid Palindrome - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com 2. 문제 요약 문자열이 팰린드롬(뒤집어도 같은 말) 인지 확인하자. * 대소문자를 구분하지 않고, 영문자와 숫자만 대상으로 함 3. 아이디어 정리 4. 문제 풀이 4-1. 내 풀이 class Solution: def isPalindrome(self, s: st..
-
[Python] 백준 20055 컨베이어 벨트 위의 로봇알고리즘/삼성 역량 문제 2022. 3. 7. 15:04
1. 문제 링크 https://www.acmicpc.net/problem/20055 20055번: 컨베이어 벨트 위의 로봇 길이가 N인 컨베이어 벨트가 있고, 길이가 2N인 벨트가 이 컨베이어 벨트를 위아래로 감싸며 돌고 있다. 벨트는 길이 1 간격으로 2N개의 칸으로 나뉘어져 있으며, 각 칸에는 아래 그림과 같이 1부 www.acmicpc.net 2. 문제 요약 1. 벨트가 각 칸 위에 있는 로봇과 함께 한 칸 회전한다. 2. 가장 먼저 벨트에 올라간 로봇부터, 벨트가 회전하는 방향으로 한 칸 이동할 수 있다면 이동한다. 만약 이동할 수 없다면 가만히 있는다. - 로봇이 이동하기 위해서는 이동하려는 칸에 로봇이 없으며, 그 칸의 내구도가 1 이상 남아 있어야 한다. 3. 올리는 위치에 있는 칸의 내구도..
-
[Python] 백준 14889 스타트와 링크알고리즘/문제풀이 2022. 2. 11. 15:20
1. 문제 링크 https://www.acmicpc.net/problem/14889 14889번: 스타트와 링크 예제 2의 경우에 (1, 3, 6), (2, 4, 5)로 팀을 나누면 되고, 예제 3의 경우에는 (1, 2, 4, 5), (3, 6, 7, 8)로 팀을 나누면 된다. www.acmicpc.net 2. 문제 요약 첫째 줄에 스타트 팀과 링크 팀의 능력치의 차이의 최솟값을 출력 3. 아이디어 정리 조합을 이용하여 2개의 팀으로 나눈다. 각 팀의 능력치를 구한다. 각 팀의 능력치 합의 차를 구한 뒤 갱신한다. 4. 문제 풀이 4-1. 내 풀이 """ return : 스타트 팀과 링크 팀의 능력치 차이 최솟값 """ import sys from itertools import combinations n..
-
[Python] programmers 방금 그곡알고리즘/카카오기출 2022. 2. 11. 15:17
1. 문제 링크 https://programmers.co.kr/learn/courses/30/lessons/17683 코딩테스트 연습 - [3차] 방금그곡 방금그곡 라디오를 자주 듣는 네오는 라디오에서 방금 나왔던 음악이 무슨 음악인지 궁금해질 때가 많다. 그럴 때 네오는 다음 포털의 '방금그곡' 서비스를 이용하곤 한다. 방금그곡에서는 TV, programmers.co.kr 2. 문제 요약 방금 그 곡 서비스에서는 음악 제목, 재생이 시작되고 끝난 시각, 악보를 제공한다. 네오가 기억한 멜로디와 악보에 사용되는 음은 C, C#, D, D#, E, F, F#, G, G#, A, A#, B 12개이다. 각 음은 1분에 1개씩 재생된다. 음악은 반드시 처음부터 재생되며 음악 길이보다 재생된 시간이 길 때는 음..
-
[Python] programmers 3차 압축알고리즘/카카오기출 2022. 2. 11. 15:15
1. 문제 링크 https://programmers.co.kr/learn/courses/30/lessons/17684 코딩테스트 연습 - [3차] 압축 TOBEORNOTTOBEORTOBEORNOT [20, 15, 2, 5, 15, 18, 14, 15, 20, 27, 29, 31, 36, 30, 32, 34] programmers.co.kr 2. 문제 요약 길이가 1인 모든 단어를 포함하도록 사전을 초기화한다. 사전에서 현재 입력과 일치하는 가장 긴 문자열 w를 찾는다. w에 해당하는 사전의 색인 번호를 출력하고, 입력에서 w를 제거한다. 입력에서 처리되지 않은 다음 글자가 남아있다면(c), w+c에 해당하는 단어를 사전에 등록한다. 단계 2로 돌아간다. 3. 아이디어 정리 길이가 1인 모든 단어를 포함하..
-
[Python] programmers 양궁대회알고리즘/카카오기출 2022. 1. 23. 00:16
1. 문제 링크 https://programmers.co.kr/learn/courses/30/lessons/92342 코딩테스트 연습 - 양궁대회 문제 설명 카카오배 양궁대회가 열렸습니다. 라이언은 저번 카카오배 양궁대회 우승자이고 이번 대회에도 결승전까지 올라왔습니다. 결승전 상대는 어피치입니다. 카카오배 양궁대회 운영위원 programmers.co.kr 2. 문제 요약 k점을 많은 화살을 맞힌 선수가 k점을 가져간다. 라이언이 가장 큰 점수 차이로 우승하기 위해 n발의 화살을 어떤 과녁 점수에 맞혀야 하는지 10~0점까지 점수를 배열에 담기 3. 아이디어 정리 중복조합을 이용해 라이언 점수를 만든다. 라이언 점수와 어피치 점수를 비교해서 총점수를 구한다. 총점수를 비교해 라이언이 큰 점수를 얻는 경우..
-
[Python] programmers k진수에서 소수 개수 구하기알고리즘/카카오기출 2022. 1. 22. 12:54
1. 문제 링크 https://programmers.co.kr/learn/courses/30/lessons/92335 코딩테스트 연습 - k진수에서 소수 개수 구하기 문제 설명 양의 정수 n이 주어집니다. 이 숫자를 k진수로 바꿨을 때, 변환된 수 안에 아래 조건에 맞는 소수(Prime number)가 몇 개인지 알아보려 합니다. 0P0처럼 소수 양쪽에 0이 있는 경우 P0처럼 소 programmers.co.kr 2. 문제 요약 진수 변환 후 0을 기준으로 나눠서 소수의 개수를 출력하기 3. 아이디어 정리 진수 변환 0을 기준으로 쪼갠다 각 쪼갠 수에 대해 소수 판별 진행 4. 문제 풀이 4-1. 내 풀이 import string import math tmp = string.digits+string.as..