[Programmers/Level 2] 전화번호 목록(Java)
·
Programmers/Level 1~2
문제 링크 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 문제전화번호부에 적힌 전화번호 중, 한 번호가 다른 번호의 접두어인 경우가 있는지 확인하려 합니다.전화번호가 다음과 같을 경우, 구조대 전화번호는 영석이의 전화번호의 접두사입니다.구조대 : 119박준영 : 97 674 223지영석 : 11 9552 4421 전화번호부에 적힌 전화번호를 담은 배열 phone_book 이 solution 함수의 매개변수로 주어질 때, 어떤 번호가 다른 번호의 접두어인 경우가 있으면 false를 그렇지 않으면 true를 return 하도록 solution 함수를 작성해주세요..
[Programmers/Level 2] 튜플(Java)
·
Programmers/Level 1~2
문제 링크 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 문제셀수있는 수량의 순서있는 열거 또는 어떤 순서를 따르는 요소들의 모음을 튜플(tuple)이라고 합니다. n개의 요소를 가진 튜플을 n-튜플(n-tuple)이라고 하며, 다음과 같이 표현할 수 있습니다.(a1, a2, a3, ..., an)튜플은 다음과 같은 성질을 가지고 있습니다.중복된 원소가 있을 수 있습니다. ex : (2, 3, 1, 2)원소에 정해진 순서가 있으며, 원소의 순서가 다르면 서로 다른 튜플입니다. ex : (1, 2, 3) ≠ (1, 3, 2)튜플의 원소 개수는 유한합니다.원소의..
[Programmers/Level 1] K번째수(Java)
·
Programmers/Level 1~2
문제 링크 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 문제배열 array의 i번째 숫자부터 j번째 숫자까지 자르고 정렬했을 때, k번째에 있는 수를 구하려 합니다.예를 들어 array가 [1, 5, 2, 6, 3, 7, 4], i = 2, j = 5, k = 3이라면 array의 2번째부터 5번째까지 자르면 [5, 2, 6, 3]입니다.1에서 나온 배열을 정렬하면 [2, 3, 5, 6]입니다.2에서 나온 배열의 3번째 숫자는 5입니다.배열 array, [i, j, k]를 원소로 가진 2차원 배열 commands가 매개변수로 주어질 때, commands의 ..
[Programmers/Level 1] 정수 내림차순으로 배치하기(Java)
·
Programmers/Level 1~2
문제 링크 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 문제함수 solution은 정수 n을 매개변수로 입력받습니다. n의 각 자릿수를 큰것부터 작은 순으로 정렬한 새로운 정수를 리턴해주세요. 예를들어 n이 118372면 873211을 리턴하면 됩니다. 제한사항n은 1이상 8000000000 이하인 자연수입니다. 예제 입력 1118372예제 출력 1873211 알고리즘 분류정렬 풀이주어진 Long 타입의 정수를 문자열로 바꾼다.오름차순으로 정렬하고 문자열을 뒤집는다.문자열을 다시 Long 타입의 정수로 타입 캐스팅을 한다. 코드더보기import java.u..
아 B형 진짜!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
·
카테고리 없음
거의다풀었는데!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!..
[Programmers/Level 1] 문자열 내 마음대로 정렬하기(Java)
·
Programmers/Level 1~2
문제 링크 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 문제 문자열로 구성된 리스트 strings와, 정수 n이 주어졌을 때, 각 문자열의 인덱스 n번째 글자를 기준으로 오름차순 정렬하려 합니다. 예를 들어 strings가 ["sun", "bed", "car"]이고 n이 1이면 각 단어의 인덱스 1의 문자 "u", "e", "a"로 strings를 정렬합니다.  제한사항strings는 길이 1 이상, 50이하인 배열입니다.strings의 원소는 소문자 알파벳으로 이루어져 있습니다.strings의 원소는 길이 1 이상, 100이하인 문자열입니다.모든 stri..
[BOJ/Gold 5] 백준 31671 특별한 오름 등반(C++)
·
BOJ/Gold
문제 링크https://www.acmicpc.net/problem/31671 문제오름은 올라야만 한다.  NLCS Jeju의 기숙사 이름 "오름"은 제주에서 봉우리나 산을 부르는 말인 오름에서 따왔다. 각 기숙사의 학생들은 1년에 한 번, 실제로 기숙사 이름의 기원인 오름을 오르게 된다.오름은 xy 평면에서 세 점 (0, 0), (N, N), (2N, 0)을 잇는 삼각형 모양이다. 당신은 (0, 0)에서 출발해서 (2N, 0)에 도착해야 한다.이동할 때는 (x, y)에서 (x + 1, y + 1) 혹은 (x + 1, y − 1)로만 이동할 수 있다. 또한 이동하여 도착한 위치는 오름의 내부 혹은 경계여야 한다.오름에서 길을 잃기 쉽기 때문에 길을 잃기 쉬운 M개의 지점에 선생님들이 계신다. 하지만 숙제를..
[Programmers/Level 3] 경주로 건설(C++, Java)
·
Programmers/Level 3
문제 링크https://school.programmers.co.kr/learn/courses/30/lessons/67259 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 문제 건설회사의 설계사인 죠르디는 고객사로부터 자동차 경주로 건설에 필요한 견적을 의뢰받았습니다.제공된 경주로 설계 도면에 따르면 경주로 부지는 N x N 크기의 정사각형 격자 형태이며 각 격자는 1 x 1 크기입니다.설계 도면에는 각 격자의 칸은 0 또는 1 로 채워져 있으며, 0은 칸이 비어 있음을 1은 해당 칸이 벽으로 채워져 있음을 나타냅니다.경주로의 출발점은 (0, 0) 칸(좌측 상..
[BOJ/Gold 5] 백준 9205 맥주 마시면서 걸어가기(Java)
·
BOJ/Gold
문제 링크https://www.acmicpc.net/problem/9205 문제송도에 사는 상근이와 친구들은 송도에서 열리는 펜타포트 락 페스티벌에 가려고 한다. 올해는 맥주를 마시면서 걸어가기로 했다. 출발은 상근이네 집에서 하고, 맥주 한 박스를 들고 출발한다. 맥주 한 박스에는 맥주가 20개 들어있다. 목이 마르면 안되기 때문에 50미터에 한 병씩 마시려고 한다. 즉, 50미터를 가려면 그 직전에 맥주 한 병을 마셔야 한다.상근이의 집에서 페스티벌이 열리는 곳은 매우 먼 거리이다. 따라서, 맥주를 더 구매해야 할 수도 있다. 미리 인터넷으로 조사를 해보니 다행히도 맥주를 파는 편의점이 있다. 편의점에 들렸을 때, 빈 병은 버리고 새 맥주 병을 살 수 있다. 하지만, 박스에 들어있는 맥주는 20병을 ..
[SWEA/D4] SWEA 5643 [Professional] 키 순서(Java)
·
SWEA/D4
문제 출처 SW Expert AcademySW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!swexpertacademy.com 알고리즘 분류최단 거리 알고리즘 풀이dp[A][B]면 A보다 B가 키가 더 크다는 것이고, dp[B][A]면 A보다 B가 키가 더 작다는 뜻이다.M가지의 키 정보를 기록하고 플로이드-워셜 알고리즘을 사용하여 N명 전체의 키의 상관관계를 기록한다.i번째 행에서는 i번째 사람보다 키가 큰 것이 확실하다면 1 이상의 숫자가 기록될 것이고, 그게 아니라면 -1일 것이다.i번째 열에서는 i번째 사람보다 키가 작은 것이 확실하다면 1 이상의 숫자가 기록될 것이고, 그게 아니라면 -1일 것이다.이를 이용해서 i번째 사람보다 키가 큰 사람과 키가 작은 사람의 수를 구할 ..
[SWEA/D6] SWEA 1260 [S/W 문제해결 응용] 7일차 - 화학물질2(Java)
·
SWEA/D6
문제 출처 SW Expert AcademySW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!swexpertacademy.com 알고리즘 분류다이나믹 프로그래밍그래프 탐색백트래킹 풀이먼저 창고에 존재하는 모든 화학 물질 용기를 조사한다. 이는 BFS로 처리할 수 있으며, BFS를 수행하면 직사각형이 나올 텐데 이 직사각형의 높이와 너비를 기록해둔다.창고를 조사한 후에는 최대 20개의 직사각형 형태의 화학 물질 용기가 나올 것이며, 이를 HXW 크기의 행렬이라고 가정한다.이제부터는 모든 화학 물질 용기를 섞는 최소의 횟수를 구해야 하며, 이 때 연쇄 행렬 최소 곱셈 알고리즘(이하 MCM, Multiple Chain Matrix Algorithm)이라는 걸 사용한다.그러기 위해서는, 먼..
[BOJ/Gold 5] 백준 17070 파이프 옮기기 1(Java)
·
BOJ/Gold
문제 링크https://www.acmicpc.net/problem/17070 문제유현이가 새 집으로 이사했다. 새 집의 크기는 N×N의 격자판으로 나타낼 수 있고, 1×1크기의 정사각형 칸으로 나누어져 있다. 각각의 칸은 (r, c)로 나타낼 수 있다. 여기서 r은 행의 번호, c는 열의 번호이고, 행과 열의 번호는 1부터 시작한다. 각각의 칸은 빈 칸이거나 벽이다.오늘은 집 수리를 위해서 파이프 하나를 옮기려고 한다. 파이프는 아래와 같은 형태이고, 2개의 연속된 칸을 차지하는 크기이다.  파이프는 회전시킬 수 있으며, 아래와 같이 3가지 방향이 가능하다.  파이프는 매우 무겁기 때문에, 유현이는 파이프를 밀어서 이동시키려고 한다. 벽에는 새로운 벽지를 발랐기 때문에, 파이프가 벽을 긁으면 안 된다. ..
[BOJ/Platinum 4] 백준 21624 Fence(C++)
·
BOJ/Platinum ~ Diamond
문제 링크https://www.acmicpc.net/problem/21624 문제Donald owns a nice small house in Manhattan. Due to recent elections it is important to protect yourself from the potential public unrest, so Donald has decided to build a fence around his house.Donald's house can be represented as a polygon on the plane, with all the coordinates being integers. Moreover, all of his house corners are exactly 90deg, an..
[BOJ/Platinum 4] 백준 5670 휴대폰 자판(C++)
·
BOJ/Platinum ~ Diamond
문제 링크https://www.acmicpc.net/problem/5670 문제휴대폰에서 길이가 P인 영단어를 입력하려면 버튼을 P번 눌러야 한다. 그러나 시스템프로그래밍 연구실에 근무하는 승혁연구원은 사전을 사용해 이 입력을 더 빨리 할 수 있는 자판 모듈을 개발하였다. 이 모듈은 사전 내에서 가능한 다음 글자가 하나뿐이라면 그 글자를 버튼 입력 없이 자동으로 입력해 준다! 자세한 작동 과정을 설명하자면 다음과 같다. 모듈이 단어의 첫 번째 글자를 추론하지는 않는다. 즉, 사전의 모든 단어가 같은 알파벳으로 시작하더라도 반드시 첫 글자는 사용자가 버튼을 눌러 입력해야 한다.길이가 1 이상인 문자열 c1c2...cn이 지금까지 입력되었을 때, 사전 안의 모든 c1c2...cn으로 시작하는 단어가 c1c2..
[BOJ/Gold 5] 백준 2421 저금통(C++)
·
BOJ/Gold
문제 링크https://www.acmicpc.net/problem/2421 문제홍태석은 저금통 2개를 가지고 있다. 홍태석은 매일매일 하나의 저금통에 1원을 넣는다. 두 저금통에 모두 N원이 모이면 태석이는 새로운 장난감을 살 수 있기 때문에, 저금을 멈춘다.홍태석은 소수를 좋아하는 것으로 서강대에서 유명하기 때문에, 첫째 저금통에 들어있는 돈의 양과 둘째 저금통의 돈의 양을 이어붙였을 때, 그것이 소수가 되는 것을 너무나도 좋아한다.예를 들어, 첫째 저금통에 12원이 있고, 둘째 저금통에 7원이 있다고 하자. 그럼 그 두 수를 이은 127은 소수가 된다.이제, 최대한 소수가 많이 나오도록, 홍태석이 돈을 넣는 최적의 순서를 찾아내면 된다. 가장 처음에 두 저금통에는 1원씩 들어있다.예를 들어,  N=4..