알고리즘

Algorithm/백준

[백준] 16500 문자열 판별 🤔 (Java)

문제 링크https://www.acmicpc.net/problem/16500문제 설명알파벳 소문자로 이루어진 문자열 S와 단어 목록 A가 주어졌을 때, S를 A에 포함된 문자열을 한 개 이상 공백없이 붙여서 만들 수 있는지 없는지 구하는 프로그램을 작성하시오. A에 포함된 단어를 여러 번 사용할 수 있다.입력첫째 줄에 길이가 100이하인 문자열 S가 주어진다. 둘째 줄에는 A에 포함된 문자열의 개수 N(1 ≤ N ≤ 100)이 주어진다. 셋째 줄부터 N개의 줄에는 A에 포함된 단어가 한 줄에 하나씩 주어진다. A에 포함된 문자열은 알파벳 소문자로만 이루어져 있고, 길이는 100을 넘지 않는다.출력A에 포함된 문자열로 S를 만들 수 있으면 1, 없으면 0을 출력한다.구조화문자열의 끝까지 정확하게 매칭되어야..

Algorithm/백준

[백준] 19699 소-난다! 🐮 (Java)

문제 링크https://www.acmicpc.net/problem/19699문제 설명지난 번 헛간 청약의 당첨우(牛)가 발표됐다. 청약에 당첨된 소들은 날아갈 듯이 기뻐하다가 진짜로 하늘을 날았다. 하지만 이후로 소들은 날 수 없었다. 그러던 어느 날, 꿀벌에게 쏘이면 잠깐 하늘을 날 수 있다는 사실을 깨달았다. 이 사실이 퍼지자 소들은 다시 자유롭게 하늘을 날기 시작했다.소들이 하늘을 날며 우(牛)통사고가 빈번해지자, 농부 존은 소들이 하늘을 나는 것에 제한을 두었다. 소들은 항의했지만 소들의 항의는 받아들여지지 않았다.농장에는 N마리의 소가 있다. 농부 존은 소들의 몸무게의 합이 소수(prime)가 되도록 M마리의 소를 선별할 계획이다. 농부 존의 계획에 맞게 소를 선별했을 때 나올 수 있는 몸무게의..

Algorithm/소프티어

[소프티어] 나무 조경 🌳 (Java)

문제 링크 Softeer - 현대자동차그룹 SW인재확보플랫폼 softeer.ai구조화최대 4쌍? -> 조합그런데 다른 문제들처럼 몇개 뽑는지가 아니라 최대 4개 뽑는다고 해서 재귀할때마다 최댓값 갱신해줌걸린 시간(23:46)소스 코드// 4개의 쌍 -> 픽스import java.io.*;import java.util.*;public class Main { static int n, ans = 0; static int[][] map, way = {{-1,0},{1,0},{0,-1},{0,1}}; static boolean[][] visit; public static void main(String[] args) throws IOException{ BufferedReade..

Algorithm/백준

[백준] 1655 가운데를 말해요 🔈 (Java)

문제 링크https://www.acmicpc.net/problem/1655문제 설명백준이는 동생에게 "가운데를 말해요" 게임을 가르쳐주고 있다. 백준이가 정수를 하나씩 외칠때마다 동생은 지금까지 백준이가 말한 수 중에서 중간값을 말해야 한다. 만약, 그동안 백준이가 외친 수의 개수가 짝수개라면 중간에 있는 두 수 중에서 작은 수를 말해야 한다.예를 들어 백준이가 동생에게 1, 5, 2, 10, -99, 7, 5를 순서대로 외쳤다고 하면, 동생은 1, 1, 2, 2, 2, 2, 5를 차례대로 말해야 한다. 백준이가 외치는 수가 주어졌을 때, 동생이 말해야 하는 수를 구하는 프로그램을 작성하시오.입력첫째 줄에는 백준이가 외치는 정수의 개수 N이 주어진다. N은 1보다 크거나 같고, 100,000보다 작거나 ..

Algorithm/백준

[백준] 1343 폴리오미노 🆎 (Java)

문제 링크https://www.acmicpc.net/problem/1343문제 설명민식이는 다음과 같은 폴리오미노 2개를 무한개만큼 가지고 있다. AAAA와 BB이제 '.'와 'X'로 이루어진 보드판이 주어졌을 때, 민식이는 겹침없이 'X'를 모두 폴리오미노로 덮으려고 한다. 이때, '.'는 폴리오미노로 덮으면 안 된다.폴리오미노로 모두 덮은 보드판을 출력하는 프로그램을 작성하시오.입력첫째 줄에 보드판이 주어진다. 보드판의 크기는 최대 50이다.출력첫째 줄에 사전순으로 가장 앞서는 답을 출력한다. 만약 덮을 수 없으면 -1을 출력한다.구조화sb : StringBuilder그냥 String length 반복문을 돌면서 처리‘.’를 만나면 ‘.’를 sb에 담아줌 아니라면 ‘.’만날때까지의 X의 길이 구함만약..

Algorithm/백준

[백준] 3987 보이저 1호 🚀 (Java)

문제 링크https://www.acmicpc.net/problem/3987문제 설명보이저 1호는 1977년에 발사된 NASA의 태양계 무인 탐사선이다. 현재 보이저 1호는 태양권덮개 (헬리오시스)에 있다.보이저 1호와 같이 오랜 기간동안 활동하는 탐사선은 경로를 항성계를 만날 때 마다 라디오 시그널 메시지를 이용해서 기록하고 있다. 항성계를 N * M개의 직사각형으로 나누어져 있는 N행 M열의 직사각형 그리드라고 생각해보자. 각 칸은 행성, 블랙홀을 포함할 수 있으며, 비어있을 수도 있다. 탐사선은 인접한 네 칸(위, 아래, 오른쪽, 왼쪽)중에서 하나를 골라서 시그널을 보낸다.시그널은 항상 일직선으로 전파되며, 행성을 만났을 경우에는 전파되는 방향이 90도로 바뀌게 된다.시그널이 블랙홀이 있는 칸을 만나..

Algorithm/TIP

알고리즘 문제 특성

위상 정렬작업의 순서, 선후 관계사이클이 있으면 안됨더보기더보기기본 코드package com.company;import java.io.*;import java.util.*;/** * 위상정렬 문제 * 2252 줄세우기 - 기본 * 2623 음악프로그램 - 기본 * 1766 문제집 - 기본 + 우선순위큐 */public class _2252_줄세우기_위상정렬 { static int N, M; static int[] tSortDegree; static List[] list; static StringBuilder sb = new StringBuilder(); public static void main(String[] args) throws IOException { Buf..

Algorithm/프로그래머스

[플머] 체육복 🏋️‍♀️ (Java)

난이도 : Lv. 1 / 걸린 시간 : 1시간30분..문제 링크 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr문제 설명점심시간에 도둑이 들어, 일부 학생이 체육복을 도난당했습니다. 다행히 여벌 체육복이 있는 학생이 이들에게 체육복을 빌려주려 합니다. 학생들의 번호는 체격 순으로 매겨져 있어, 바로 앞번호의 학생이나 바로 뒷번호의 학생에게만 체육복을 빌려줄 수 있습니다. 예를 들어, 4번 학생은 3번 학생이나 5번 학생에게만 체육복을 빌려줄 수 있습니다. 체육복이 없으면 수업을 들을 수 없기 때문에 체육복을 적절히 빌려 최대한 많은 학생이 체육수업을 들어야 합..

delayU
'알고리즘' 태그의 글 목록 (4 Page)