일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 백준알고리즘
- 코딩봉사
- 문제풀이
- 백준 알고리즘
- 코딩교육봉사
- 공부일지
- 스프링
- 알고리즘
- 소프티어
- SQL
- 회고
- kotlin
- 백준
- 시나공
- 파이썬
- programmers
- CJ UNIT
- SW봉사
- 프로그래머스
- MYSQL
- 1과목
- 코틀린
- softeer
- java
- BFS
- python
- 정보처리산업기사
- 자바
- 데이터베이스
- C++
- Today
- Total
목록알고리즘 (16)
JIE0025
✅ 개요 어제 문자열 매칭 알고리즘 중 KMP에 대해 알아보았다. [알고리즘] 문자열 매칭 KMP (동작방식,수도코드) ✅ 개요 문자열 매칭 알고리즘 중 O(N+M)을 보장하는, KMP 알고리즘의 원리를 알아보자. ✅ 단순 문자열 매칭의 비효율 가장 단순하게 문자열 매칭을 해보면 아래와 같은 수도 코드가 된다. 2중 for jie0025.tistory.com 그리고 비교군으로 보이어무어라는 문자열 매칭 알고리즘이 존재하는걸 알게되었다. 존재하는걸 알았으니, 해당 알고리즘이 뭔지, 동작방식까지 이해해보자. ✅ 보이어무어 (Boyer-Moore) 보이어무어 알고리즘도 KMP와 마찬가지로 모든경우를 계산하지 않고, 반복되는 연산을 줄인다. 보이어무어는 문자열 매칭이 마지막에 틀릴 가능성이 높다는 특징을 이용한..
프로그래머스 > 코딩테스트 연습 > 코딩테스트 고득점 Kit > 해시 > 위장 문제 링크 https://school.programmers.co.kr/learn/courses/30/lessons/42578?language=java 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 ✅ 풀이 과정 0. 자료구조 / 알고리즘 선택 해시맵을 이용해 Key에 해당하는 개수를 세어주면 된다. 1. 복잡도 고려 스파이가 가진 의상의 수가 1~30개이고, 문자열의 길이도 20이하여서 고려할정도의 문제가 아니다. 2. 수도코드/ 알고리즘 생각 1) 들어온 데이터를 옷의 ..
알고리즘 먼데이 챌린지 2주차 폭탄구현하기 (⭐⭐) https://level.goorm.io/exam/159666/%EC%95%8C%EA%B3%A0%EB%A6%AC%EC%A6%98%EB%A8%BC%EB%8D%B0%EC%9D%B4-%ED%8F%AD%ED%83%84-%EA%B5%AC%ED%98%84%ED%95%98%EA%B8%B0/quiz/1 구름LEVEL 코딩테스트에서 가장 높은 비중을 차지하는 알고리즘 문제를 제작하고 풀이할 수 있는 온라인 저지 서비스입니다. 기업에서 선호하는 C, C++, 파이썬(Python), 자바(Java), 자바스크립트(Javascript) 이 level.goorm.io 폭탄이 떨어진위치들이 주어졌을 때 전체 폭탄값들의 합을 출력하는 간단한 문제이다. ✅ 풀이 과정 1. 복잡도 ..
https://level.goorm.io/exam/49088/%EC%9D%98%EC%A2%8B%EC%9D%80-%ED%98%95%EC%A0%9C/quiz/1 구름LEVEL 코딩테스트에서 가장 높은 비중을 차지하는 알고리즘 문제를 제작하고 풀이할 수 있는 온라인 저지 서비스입니다. 기업에서 선호하는 C, C++, 파이썬(Python), 자바(Java), 자바스크립트(Javascript) 이 level.goorm.io 전글과 내용은 같은데, 드디어 자바로 문제를 풀어보게 되어 올리게 되었다. 앞으로는 자바 코딩테스트 대비 학습한 지식들을 함께 올리고자 한다. 문제 ✅ 풀이과정 파이썬 풀때와 당연히 동일하게 풀었다. https://jie0025.tistory.com/230?category=1058752 [구름..
https://level.goorm.io/exam/49088/%EC%9D%98%EC%A2%8B%EC%9D%80-%ED%98%95%EC%A0%9C/quiz/1 구름LEVEL 코딩테스트에서 가장 높은 비중을 차지하는 알고리즘 문제를 제작하고 풀이할 수 있는 온라인 저지 서비스입니다. 기업에서 선호하는 C, C++, 파이썬(Python), 자바(Java), 자바스크립트(Javascript) 이 level.goorm.io 정답률이 높아서 풀어봤다 ㅋㅋㅋ 자바로도 풀어봐야지 문제 : 의좋은 형제 ✅ 풀이과정 하루에 한번 번갈아가며, 서로에게 절반씩 준다고 했을 때 D번째 날엔 진우와 선우가 얼만큼을 갖고있는지를 출력하면 되는 문제이다. 만약 갖고있는 식량의 양이 홀수일 경우 식량을 통채로 넘겨준다고 하니 그것만 ..
An array A consisting of N different integers is given. # N개의 다른 정수로 구성된 배열 A The array contains integers in the range [1..(N + 1)], which means that exactly one element is missing. Your goal is to find that missing element. #배열은 1부터 N+1의 값을 포함한다. (1요소만 없음) #목표는 없는 요소를 찾는것! Write a function: def solution(A) that, given an array A, returns the value of the missing element. #A가 주어졌을 떄 없어진 값을 반환하라...
https://www.acmicpc.net/problem/1068 1068번: 트리 첫째 줄에 트리의 노드의 개수 N이 주어진다. N은 50보다 작거나 같은 자연수이다. 둘째 줄에는 0번 노드부터 N-1번 노드까지, 각 노드의 부모가 주어진다. 만약 부모가 없다면 (루트) -1이 주어진다 www.acmicpc.net 문제 트리에서 리프 노드란, 자식의 개수가 0인 노드를 말한다. 트리가 주어졌을 때, 노드 하나를 지울 것이다. 그 때, 남은 트리에서 리프 노드의 개수를 구하는 프로그램을 작성하시오. 노드를 지우면 그 노드와 노드의 모든 자손이 트리에서 제거된다. 예를 들어, 다음과 같은 트리가 있다고 하자. 현재 리프 노드의 개수는 3개이다. (초록색 색칠된 노드) 이때, 1번을 지우면, 다음과 같이 변..
https://www.acmicpc.net/problem/14627 14627번: 파닭파닭 첫째 줄에 승균이가 시장에서 사 온 파의 개수 S(1≤S≤1,000,000), 그리고 주문받은 파닭의 수 C(1≤C≤1,000,000)가 입력된다. 파의 개수는 항상 파닭의 수를 넘지 않는다. (S≤C) 그 후, S 줄에 걸쳐 파 www.acmicpc.net 백준 14627번 : 파닭파닭 (실버3) 문제 평소 요리에 관심이 많은 승균이는 치킨집을 개업하였다. 승균이네 치킨집은 파닭이 주메뉴다. 승균이는 가게를 오픈하기 전에 남부시장에 들러서 길이가 일정하지 않은 파를 여러 개 구매하였다. 승균이는 파닭의 일정한 맛을 유지하기 위해 각각의 파닭에 같은 양의 파를 넣는다. 또 파닭 맛은 파의 양에 따라 좌우된다고 생각..
https://www.acmicpc.net/problem/13702 13702번: 이상한 술집 프로그래밍 대회 전날, 은상과 친구들은 이상한 술집에 모였다. 이 술집에서 막걸리를 시키면 주전자의 용량은 똑같았으나 안에 들어 있는 막걸리 용량은 랜덤이다. 즉 한 번 주문에 막걸리 용 www.acmicpc.net 문제 프로그래밍 대회 전날, 은상과 친구들은 이상한 술집에 모였다. 이 술집에서 막걸리를 시키면 주전자의 용량은 똑같았으나 안에 들어 있는 막걸리 용량은 랜덤이다. 즉 한 번 주문에 막걸리 용량이 802ml 이기도 1002ml가 나오기도 한다. 은상은 막걸리 N 주전자를 주문하고, 자신을 포함한 친구들 K명에게 막걸리를 똑같은 양으로 나눠주려고 한다. 그런데 은상과 친구들은 다른 주전자의 막걸리가 ..
백준 4375번 (실버3) 파이썬 https://www.acmicpc.net/problem/4375 4375번: 1 2와 5로 나누어 떨어지지 않는 정수 n(1 ≤ n ≤ 10000)가 주어졌을 때, 1로만 이루어진 n의 배수를 찾는 프로그램을 작성하시오. www.acmicpc.net 문제 2와 5로 나누어 떨어지지 않는 정수 n(1 num은 1 num = 1 * 10 +1 >> num은 11 num = 11 * 10 +1 >> num은 111 . . . 이렇게 num값을 만든 후, num값이 입력값 n의 배수인지 확인을 해준다. 5) num %= n 여기서 num을 %n을 바로 해주면 num 값이 바뀌어서 다시 while문 돌 때 괜찮을까 싶은데 (a*b)%c == (a%c*b%c)%c와 같아서 111..