목록알고리즘 (21)
민스씨의 일취일장

백준 16916 문제를 해결하는 과정에서 사용한 KMP 알고리즘에 대한 기록이다.h.o.Algorithm - Java 백준 16916문제두 개의 문자열이 주어진다. 두 번째 문자열이 첫 번째 문자열에 포함되는지 여부를 판단하는 문제이다.풀이String.contins()를 이용한 풀이간단하게 String.contains() 메소드를 이용해서 문제를 해결을 시도하였다.import java.io.*;public class baekjoon16916 { public static void main(String[] args) throws IOException{ BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); ..

백준 1789 풀이 알고리즘을 분석하는 글이다.h.o. Algorithm | Java | 백준 1789 - 구현 & 그리디 - 무의미한 로직은 생략문제서로 다른 N개의 자연수의 합이 S라고 한다. S를 알 때, 자연수 N의 최댓값은 얼마일까?문제 분석N개의 자연수의 합이 S이다.N의 최댓값, 즉 최대한 많은 수를 더해 S를 구해야 한다.많은 수를 더하기 위해선 1부터 사용할 수 있는 작은 자연수를 모두 더해야 한다.알고리즘import java.io.*;public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStrea..

엘리스 코드 챌린지에 참가한 이야기이다.엘리스 코드 챌린지 예선 참가작년에 구름에서 진행한 구름톤 챌린지에 참가했었다. 코딩테스트 연습도 하고 최종 50인에 들어갈 경우 이동욱님 세미나에 참석할 수 있어서 굉장히 열정적으로 참여했었다. 구름톤 챌린지 | 20일간의 코딩테스트 챌린지 시작 (Feat. 3일차)구름톤 챌린지(9oormthon CHALLENGE)에 대한 소개와 챌린지 과정을 기록하는 글입니다. 구름톤 챌린지 구름톤 챌린지라고 들어보셨나요? 구름톤 챌린지는 4주 동안 월요일부터 금요일까지 매일 한 문ydmins.com너무 운좋게도 최종 50인에 선정되어서, 이동욱님 강연도 보고 싸인도 받을 수 있었다. 그런 동기로 시작한 챌린지였지만, 매일 한 시간 정도씩 한 문제를 집중해서 풀어가는 그 과정이..

백준 2667 단지번호 붙이기 문제에 대한 글입니다. 백준 2667 단지번호 붙이기 내용 문제 내용은 아래 링크에서 확인할 수 있습니다. 2667번: 단지번호붙이기 과 같이 정사각형 모양의 지도가 있다. 1은 집이 있는 곳을, 0은 집이 없는 곳을 나타낸다. 철수는 이 지도를 가지고 연결된 집의 모임인 단지를 정의하고, 단지에 번호를 붙이려 한다. 여 www.acmicpc.net 풀이 전략 전형적인 DFS 문제이다. 단지 내 집들의 수를 마지막에 정렬해서 출력해야 하기 때문에 정렬이 간단한 List를 이용했다. 전체코드 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java..

백준 11057 오르막 수 문제에 대한 글입니다. 백준 11057 오르막 수 문제 문제 정보는 아래 링크에서 확인할 수 있다. 11057번: 오르막 수 오르막 수는 수의 자리가 오름차순을 이루는 수를 말한다. 이때, 인접한 수가 같아도 오름차순으로 친다. 예를 들어, 2234와 3678, 11119는 오르막 수이지만, 2232, 3676, 91111은 오르막 수가 아니다. 수 www.acmicpc.net 접근 방법 규칙이 있는 수의 나열 및 경우의 수는 이전의 결과가 다음 결과에 규칙적으로 영향을 준다. 따라서 이와 같은 문제는 바로 직전에 영향을 주는 필수 요소를 찾고, 가장 처음부터 값을 쌓아 나가야 한다. 핵심 키워드는 점화식과 초기조건이다. 첫 번째 수 : 수의 첫 번째 수가 어떤 수인지 알려준다..

백준 10866 덱 문제에 대한글입니다. 백준 10866 덱 문제 문제 정보는 아래 링크에서 확인할 수 있다. 10866번: 덱 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지 www.acmicpc.net 풀이 입력값을 Switch문으로 분별해 적절한 수행을 해주면 된다. 특징 덱(Deque)를 선언하고 사용할 주 안다면 아주 쉬운 문제이다. 반대로 사용법을 잘 모른다면 덱을 연습하기 좋은 문제이다. 전체 코드 public class backjoon10866 { static BufferedReader br = new BufferedReade..