CodingTest [CodingTest] 프로그래머스 : 음양더하기 그래서 뭘 몰라서 못 풀었냐? 호출할 저 놈을 만드는거. 각 배열의 인자를 매칭시키는것 처음 접할당시 for문 안에 if조건문을 주고, 증감을통해 count라는 새로운 공간에 넣어주는것 --> 사실 이게 문제풀이의 전부인데, 앞서 '소수만들기'문제를 풀고오니 풀이과정이 보였다. 추가학습 코드상에 첫째줄, 둘째줄 위치가 바뀌었을때 즉 let count = 0;가 soultion보다 아래 있을때... CodingTestCodingTest [CodingTest] 프로그래머스 : 소수만들기 핵심 문제를 쪼개서 할 수 있는 만큼까지만 짜는 능력을 기르는것이 중요하다. 1. 숫자 세개를 골라서 더하기 2. 더한 각각의 수가 소수인지 판단하기 그래서 뭘 몰라서 못 풀었냐? 숫자 세개를 어떻게 고를지 몰랐음 정확히는 nums.length를 쓰는개념 i+1, j+1인가? (애매함) 소수를 판단하는것. 1과 자신을 제외한 숫자를 뽑아내는것 그 숫자를 가지고 어떻게 소수를 판단하냐? 소수판... CodingTestCodingTest [백준] 1018번 체스판 다시 칠하기 문제 출처 : 👉🏻 8X8로 잘라야 해서 행을 i-7만큼, 열을 j-7만큼 고정시킨다. 그 후 i,j에서 i+8까지, j+8까지 전부 반복하면서 확인한다. 흰색이 먼저인 경우와 검은색이 먼저인 경우를 나누어 min()을 사용하여 최소값을 알아낸다. 이 문제는 감도 안왔다. 브루트 포스 너무어려워😥... CodingTestCodingTest Part7.11_동적프로그래밍(DynamicProgramming)_최대점수 구하기(냅색 알고리즘) 첫 번째 줄에 문제의 개수N(1<=N<=100)과 제한 시간 M(10<=M<=1000)이 주어집니다. 두 번째 줄부터 N줄에 걸쳐 문제를 풀었을 때의 점수와 푸는데 걸리는 시간이 주어집니다. 첫 번째 줄에 제한 시간안에 얻을 수 있는 최대 점수를 출력합니다. 여기서 중요한 조건이 나왔다. "한 유형당 한문제만 풀 수 있다는 것" 이는 대부분 이차원 리스트로 풀라고 하지만, 냅색알고리즘을 M부... pythonalgorithmCodingTestCodingTest [백준] 11729번 하노이 탑 이동 순서 문제 출처 : 👉🏻 재귀함수를 이용해서 하노이 탑을 이동해야 했다. 👉🏻 start와 end 막대 번호만 알뿐 나머지 막대 번호는 모르지만 모든 막대의 번호 합이 6이므로 6-start-end를 하면 막대의 번호를 알 수 있다. 👉🏻 n-1개씩 재귀함수를 이용하면 구할 수 있다. 특히 마지막 개수가 2**n -1 이걸 생각하다니... 역시 어렵다... 다음은 브루트 포스 파이팅!... CodingTestCodingTest [Programmers] level 2 - 멀쩡한 사각형 (lang: Swift) 멀쩡한 사각형 문제 설명 가로 길이가 Wcm, 세로 길이가 Hcm인 직사각형 종이가 있습니다. 종이에는 가로, 세로 방향과 평행하게 격자 형태로 선이 그어져 있으며, 모든 격자칸은 1cm x 1cm 크기입니다. 이 종이를 격자 선을 따라 1cm × 1cm의 정사각형으로 잘라 사용할 예정이었는데, 누군가가 이 종이를 대각선 꼭지점 2개를 잇는 방향으로 잘라 놓았습니다. 그러므로 현재 직사각형 ... iOSCodingTestCodingTest [백준] 1002번 터렛 문제 출처 : 👉🏻 각각의 원의 위치 관계를 고려해서 해결해야 했다. 꽤 생각해야했던 문제였다. 술술술 풀자... CodingTestCodingTest Part7.14_동적프로그래밍(DynamicProgramming)_위상정렬(그래프 정렬) 위상 정렬이란 전체 일의 순서는 1, 6, 2, 5, 4, 3과 같이 정할 수 있다. 전체 일의 순서는 여러 가지가 있습 니다 그 중에 하나입니다. 첫 번째 줄에 전체 일의 개수 N과 일의 순서 정보의 개수 M이 주어집니다. 두 번째 줄부터 M개의 정보가 주어집니다. 전체 일의 순서를 출력합니다. 방향그래프인 이차원 리스트에 값을 초기화 한다. 차수를 확인하면서 "진입 차수"를 일차원 리스트... pythonalgorithmCodingTestCodingTest [백준] 1085번 직사각형에서 탈출 문제 출처 : 📘 for문 반복 👉🏻 일일이 비교해주는 코드를 작성했는데 너무 비효율적인 것 같아서 다른 코드를 찾아봤다. 👉🏻 ㅋㅋㅋㅋㅋㅋㅋㅋ min함수 쓰면 이렇게 간단한걸... 열심히 하자...!... CodingTestCodingTest Part7.12_동적프로그래밍(DynamicProgramming)_플로이드 워샬 알고리즘 첫 번째 줄에는 도시의 수N(N<=100)과 도로수 M(M<=200)가 주어지고, M줄에 걸쳐 도로정보 와 비용(20 이하의 자연수)이 주어진다. 만약 1번 도시와 2번도시가 연결되고 그 비용이 13이 면 “1 2 13”으로 주어진다. 모든 도시에서 모든 도시로 이동하는데 드는 최소 비용을 아래와 같이 출력한다. 자기자신으로 가는 비용은 0입니다. i번 정점에서 j번 정점으로 갈 수 없을 때... pythonalgorithmCodingTestCodingTest Part7.10_동적프로그래밍(DynamicProgramming)_동전교환(냅색 알고리즘) 첫 번째 줄에는 동전의 종류개수 N(1<=N<=12)이 주어진다. 두 번째 줄에는 N개의 동전의 종 류가 주어지고, 그 다음줄에 거슬러 줄 금액 M(1<=M<=500)이 주어진다. 첫 번째 줄에 거슬러 줄 동전의 최소개수를 출력한다. 냅색 알고리즘을 이용한다. 냅색 알고리즘은 참 재밌는거 같다 냅색 알고리즘 설명 냅색 알고리즘은 담을 수 있는 물건이 나눌 수 있냐 없냐에 따라 나눈다. 담을 ... pythonalgorithmCodingTestCodingTest P_10866 덱 시간 제한 메모리 제한 정답 정답 비율 0.5 초 (추가 시간 없음) 정수를 저장하는 덱(Deque)를 구현한 다음, 입력으로 주어지는 명령을 처리하는 프로그램을 작성하시오. push_front X: 정수 X를 덱의 앞에 넣는다. push_back X: 정수 X를 덱의 뒤에 넣는다. pop_front: 덱의 가장 앞에 있는 수를 빼고, 그 수를 출력한다. 만약, 덱에 들어있는 정수가 없는 경... CodingTestCodingTest [Programmers] level 2 - 타겟 넘버 (lang: Swift) 타겟 넘버 문제 설명 n개의 음이 아닌 정수들이 있습니다. 이 정수들을 순서를 바꾸지 않고 적절히 더하거나 빼서 타겟 넘버를 만들려고 합니다. 예를 들어 [1, 1, 1, 1, 1]로 숫자 3을 만들려면 다음 다섯 방법을 쓸 수 있습니다. 사용할 수 있는 숫자가 담긴 배열 numbers, 타겟 넘버 target이 매개변수로 주어질 때 숫자를 적절히 더하고 빼서 타겟 넘버를 만드는 방법의 수를... iOSCodingTestCodingTest P_13023 ABCDE 시간 제한 메모리 제한 정답 맞힌 사람 정답 비율 사람들은 0번부터 N-1번으로 번호가 매겨져 있고, 일부 사람들은 친구이다. 오늘은 다음과 같은 친구 관계를 가진 사람 A, B, C, D, E가 존재하는지 구해보려고 한다. 위와 같은 친구 관계가 존재하는지 안하는지 구하는 프로그램을 작성하시오. 입력 첫째 줄에 사람의 수 N (5 ≤ N ≤ 2000)과 친구 관계의 수 M (1 ≤ M ≤ ... CodingTestCodingTest [Programmers] level 2 - 오픈채팅방 (lang: Swift) 카카오톡 오픈채팅방에서는 친구가 아닌 사람들과 대화를 할 수 있는데, 본래 닉네임이 아닌 가상의 닉네임을 사용하여 채팅방에 들어갈 수 있다. 채팅방에 누군가 들어오면 다음 메시지가 출력된다. "[닉네임]님이 들어왔습니다." 채팅방에서 닉네임을 변경하는 방법은 다음과 같이 두 가지이다. 채팅방에서 닉네임을 변경한다. 닉네임을 변경할 때는 기존에 채팅방에 출력되어 있던 메시지의 닉네임도 전부 변... iOSCodingTestCodingTest [Programmers] level 2 - 기능 개발 (lang: Swift) 문제 설명 프로그래머스 팀에서는 기능 개선 작업을 수행 중입니다. 각 기능은 진도가 100%일 때 서비스에 반영할 수 있습니다. 또, 각 기능의 개발속도는 모두 다르기 때문에 뒤에 있는 기능이 앞에 있는 기능보다 먼저 개발될 수 있고, 이때 뒤에 있는 기능은 앞에 있는 기능이 배포될 때 함께 배포됩니다. 먼저 배포되어야 하는 순서대로 작업의 진도가 적힌 정수 배열 progresses와 각 작... iOSCodingTestCodingTest [자바스크립트, JS] 이분 검색(Binary Search), 결정 알고리즘 문제 풀이, 개념 정리 📝 문제 소개 즉, 1번 노래와 5번 노래를 같은 DVD에 녹화하기 위해서는 1번과 5번 사이의 모든 노래도 같은 DVD에 녹화해야한다. 이 때 DVD의 크기(녹화 가능한 길이)를 최소로 하려고 한다. 문제를 간략하게 정리를 해보면, 나눠야할 DVD의 개수를 M, 각 노래의 길이가 배열로 차례대로 넘어온다. 이 DVD의 길이는 최소의 용량으로 지정하는 것이 좋으니, 노래를 자르지 않고, 9개... dicisionAlgorithmCodingTestbinary_searchJavaScriptjsCodingTest 프로그래머스 코딩테스트 연습 <문자열 내 마음대로 정렬하기> 코딩테스트 연습을 이제 막 시작해 부끄러운 수준의 내 답안과 다른 사람들의 답안을 확인해보자. 주어진 인덱스의 글자가 다른 경우 을 통해 해당 문자의 UTF-16 코드를 비교하고, 같은 경우에는 로 사전순으로 정렬하는 콜백함수를 가진 메서드를 통해 정렬한다. 주요 활용 문법 charCodeAt(), localeCompare(), sort() localeCompare()와 조건부 삼항 연산자를... CodingTestCodingTest 프로그래머스 코딩테스트 연습 <문자열 내림차순으로 배치하기> 코딩테스트 연습을 이제 막 시작해 부끄러운 수준의 내 답안과 다른 사람들의 답안을 확인해보자. 문자열 s를 split()을 통해 분리하고, 이를 sort()를 통해 오름차순으로 정렬한 후에 reverse()로 내림차순으로 변경한 다음 join()으로 합치면 된다. 주요 활용 문법 split(), sort(), reverse(), join() 거의 유사한 답안이나, 더 깔끔하게 작성하였다. 메... CodingTestCodingTest 프로그래머스 코딩테스트 연습 <문자열 다루기 기본> 코딩테스트 연습을 이제 막 시작해 부끄러운 수준의 내 답안과 다른 사람들의 답안을 확인해보자. 문자열을 분리한 후, 각 문자열의 UTF-16 코드가 65번 이상이면 알파벳이기 때문에 알파벳이 없는 경우 중, 배열의 길이가 4, 6인 경우만 반환한다. 정규표현식과 regex.test()을 활용한 답안 ^: 문자열의 시작 \d: 숫자, [0-9]와 달리 페르시안 숫자, 아랍 숫자 등을 포함한다.... CodingTestCodingTest 프로그래머스 코딩테스트 연습 <두 정수 사이의 합> 코딩테스트 연습을 이제 막 시작해 부끄러운 수준의 내 답안과 다른 사람들의 답안을 확인해보자. 먼저 두 수를 비교하여, 두 수 사이의 모든 정수의 합을 구하게끔 하는데, 이때 두 수 모두 음수가 될 수 있다는 점에 유의해야 한다. 참고로, a, b 사이의 모든 정수의 합은 (a + b) * (b - a) / 2로 계산된다. Math.abs()를 활용한 답안 를 활용해 a, b의 부호에 관계 ... CodingTestCodingTest 프로그래머스 코딩테스트 연습 <서울에서 김서방 찾기> 코딩테스트 연습을 이제 막 시작해 부끄러운 수준의 내 답안과 다른 사람들의 답안을 확인해보자. indexOf()을 활용한 답안 indexOf() 메서드를 활용해 해당 문자열이 존재하는 인덱스를 검색할 수 있다. 메서드는 호출한 String 객체에서 주어진 값과 일치하는 첫 번째 인덱스를 반환한다. 만약, 일치하는 값이 없으면 -1을 반환한다.... CodingTestCodingTest [Programmers] level 1 - 크레인 인형뽑기 게임 (lang: Swift) 게임 화면은 "1 x 1" 크기의 칸들로 이루어진 "N x N" 크기의 정사각 격자이며 위쪽에는 크레인이 있고 오른쪽에는 바구니가 있습니다. 모든 인형은 "1 x 1" 크기의 격자 한 칸을 차지하며 격자의 가장 아래 칸부터 차곡차곡 쌓여 있습니다. 게임 사용자는 크레인을 좌우로 움직여서 멈춘 위치에서 가장 위에 있는 인형을 집어 올릴 수 있습니다. 집어 올린 인형은 바구니에 쌓이게 되는 데,... CodingTestswiftCodingTest P.14391 종이 조각 시간 제한 메모리 제한 정답 정답 비율 영선이는 숫자가 쓰여 있는 직사각형 종이를 가지고 있다. 종이는 1×1 크기의 정사각형 칸으로 나누어져 있고, 숫자는 각 칸에 하나씩 쓰여 있다. 각 조각은 크기가 세로나 가로 크기가 1인 직사각형 모양이다. 길이가 N인 조각은 N자리 수로 나타낼 수 있다. 아래 그림은 4×4 크기의 종이를 자른 한 가지 방법이다. 각 조각의 합은 493 + 7160 ... CodingTestCodingTest 프로그래머스 코딩테스트 연습 <문자열 내 p와 y의 개수> 코딩테스트 연습을 이제 막 시작해 부끄러운 수준의 내 답안과 다른 사람들의 답안을 확인해보자. match()와 정규표현식을 활용해서 문자열에서 정규표현식이 일치하는 부분을 검색하여 해결하고자 했으나, 테스트 과정에서 런타임 에러가 발생했다. 추측하기로는 정규표현식으로 문자열을 검색하는 과정이 오래 걸리기 때문이라고 생각된다. 또한, match()에 의해 문자열을 검색할 때, p, y가 존재하... CodingTestCodingTest 1부터 N까지 합 구하기 1. 1부터 n까지 정수의 합 구하기 index 값을 계속 더해준다고 생각하면 됩니다. 2. 배열 값 모두 더하기 배열 값의 합은 Array의 reduce(리듀서) 메소드를 사용하면 쉽게 구할 수 있습니다. reduce()는 배열 내에 존재하는 각 요소에 대해 callback 함수를 한 번씩 실행하는데, 콜백 함수는 accumulator, currentValue, currentIndex, a... CodingTestCodingTest P.11727 2xn 타일링 2 시간 제한 메모리 제한 제출 정답 맞힌 사람 정답 비율 1 초 256 MB 문제 2×n 직사각형을 1×2, 2×1과 2×2 타일로 채우는 방법의 수를 구하는 프로그램을 작성하시오. 아래 그림은 2×17 직사각형을 채운 한가지 예이다. 입력 첫째 줄에 n이 주어진다. (1 ≤ n ≤ 1,000) 출력 첫째 줄에 2×n 크기의 직사각형을 채우는 방법의 수를 10,007로 나눈 나머지를 출력한다.... CodingTestCodingTest P.11726 2xn 타일링 시간 제한 메모리 제한 제출 정답 맞힌 사람 정답 비율 1 초 256 MB 문제 2×n 크기의 직사각형을 1×2, 2×1 타일로 채우는 방법의 수를 구하는 프로그램을 작성하시오. 아래 그림은 2×5 크기의 직사각형을 채운 한 가지 방법의 예이다. 입력 첫째 줄에 n이 주어진다. (1 ≤ n ≤ 1,000) 출력 첫째 줄에 2×n 크기의 직사각형을 채우는 방법의 수를 10,007로 나눈 나머지... CodingTestCodingTest Programmers 커뮤러닝/3기/JAVA/코딩테스트 실력 UP 패키지 - 1주차_예산 ❤️ github 주소 : 알고리즘 공부가 필요한게 느껴져 Programmers 커뮤러닝 을 신청했다 커리큘럼은 아래와같다 다른사람에게 나의 코드를 리뷰받을수 있어 좋은것 같다 첫째주는 그리디/정렬/이분탐색/시뮬레이션 에 해당하는 문제를 풀고 그다음주에 수강생들끼리 코드리뷰를 한 후 알고리즘 개념학습 및 풀이 강의를 본다 내가 푼 첫번째 문제 : Programmers 예산 나의 답안... JavaprogrammersCodingTestCodingTest 이전 기사 보기
[CodingTest] 프로그래머스 : 음양더하기 그래서 뭘 몰라서 못 풀었냐? 호출할 저 놈을 만드는거. 각 배열의 인자를 매칭시키는것 처음 접할당시 for문 안에 if조건문을 주고, 증감을통해 count라는 새로운 공간에 넣어주는것 --> 사실 이게 문제풀이의 전부인데, 앞서 '소수만들기'문제를 풀고오니 풀이과정이 보였다. 추가학습 코드상에 첫째줄, 둘째줄 위치가 바뀌었을때 즉 let count = 0;가 soultion보다 아래 있을때... CodingTestCodingTest [CodingTest] 프로그래머스 : 소수만들기 핵심 문제를 쪼개서 할 수 있는 만큼까지만 짜는 능력을 기르는것이 중요하다. 1. 숫자 세개를 골라서 더하기 2. 더한 각각의 수가 소수인지 판단하기 그래서 뭘 몰라서 못 풀었냐? 숫자 세개를 어떻게 고를지 몰랐음 정확히는 nums.length를 쓰는개념 i+1, j+1인가? (애매함) 소수를 판단하는것. 1과 자신을 제외한 숫자를 뽑아내는것 그 숫자를 가지고 어떻게 소수를 판단하냐? 소수판... CodingTestCodingTest [백준] 1018번 체스판 다시 칠하기 문제 출처 : 👉🏻 8X8로 잘라야 해서 행을 i-7만큼, 열을 j-7만큼 고정시킨다. 그 후 i,j에서 i+8까지, j+8까지 전부 반복하면서 확인한다. 흰색이 먼저인 경우와 검은색이 먼저인 경우를 나누어 min()을 사용하여 최소값을 알아낸다. 이 문제는 감도 안왔다. 브루트 포스 너무어려워😥... CodingTestCodingTest Part7.11_동적프로그래밍(DynamicProgramming)_최대점수 구하기(냅색 알고리즘) 첫 번째 줄에 문제의 개수N(1<=N<=100)과 제한 시간 M(10<=M<=1000)이 주어집니다. 두 번째 줄부터 N줄에 걸쳐 문제를 풀었을 때의 점수와 푸는데 걸리는 시간이 주어집니다. 첫 번째 줄에 제한 시간안에 얻을 수 있는 최대 점수를 출력합니다. 여기서 중요한 조건이 나왔다. "한 유형당 한문제만 풀 수 있다는 것" 이는 대부분 이차원 리스트로 풀라고 하지만, 냅색알고리즘을 M부... pythonalgorithmCodingTestCodingTest [백준] 11729번 하노이 탑 이동 순서 문제 출처 : 👉🏻 재귀함수를 이용해서 하노이 탑을 이동해야 했다. 👉🏻 start와 end 막대 번호만 알뿐 나머지 막대 번호는 모르지만 모든 막대의 번호 합이 6이므로 6-start-end를 하면 막대의 번호를 알 수 있다. 👉🏻 n-1개씩 재귀함수를 이용하면 구할 수 있다. 특히 마지막 개수가 2**n -1 이걸 생각하다니... 역시 어렵다... 다음은 브루트 포스 파이팅!... CodingTestCodingTest [Programmers] level 2 - 멀쩡한 사각형 (lang: Swift) 멀쩡한 사각형 문제 설명 가로 길이가 Wcm, 세로 길이가 Hcm인 직사각형 종이가 있습니다. 종이에는 가로, 세로 방향과 평행하게 격자 형태로 선이 그어져 있으며, 모든 격자칸은 1cm x 1cm 크기입니다. 이 종이를 격자 선을 따라 1cm × 1cm의 정사각형으로 잘라 사용할 예정이었는데, 누군가가 이 종이를 대각선 꼭지점 2개를 잇는 방향으로 잘라 놓았습니다. 그러므로 현재 직사각형 ... iOSCodingTestCodingTest [백준] 1002번 터렛 문제 출처 : 👉🏻 각각의 원의 위치 관계를 고려해서 해결해야 했다. 꽤 생각해야했던 문제였다. 술술술 풀자... CodingTestCodingTest Part7.14_동적프로그래밍(DynamicProgramming)_위상정렬(그래프 정렬) 위상 정렬이란 전체 일의 순서는 1, 6, 2, 5, 4, 3과 같이 정할 수 있다. 전체 일의 순서는 여러 가지가 있습 니다 그 중에 하나입니다. 첫 번째 줄에 전체 일의 개수 N과 일의 순서 정보의 개수 M이 주어집니다. 두 번째 줄부터 M개의 정보가 주어집니다. 전체 일의 순서를 출력합니다. 방향그래프인 이차원 리스트에 값을 초기화 한다. 차수를 확인하면서 "진입 차수"를 일차원 리스트... pythonalgorithmCodingTestCodingTest [백준] 1085번 직사각형에서 탈출 문제 출처 : 📘 for문 반복 👉🏻 일일이 비교해주는 코드를 작성했는데 너무 비효율적인 것 같아서 다른 코드를 찾아봤다. 👉🏻 ㅋㅋㅋㅋㅋㅋㅋㅋ min함수 쓰면 이렇게 간단한걸... 열심히 하자...!... CodingTestCodingTest Part7.12_동적프로그래밍(DynamicProgramming)_플로이드 워샬 알고리즘 첫 번째 줄에는 도시의 수N(N<=100)과 도로수 M(M<=200)가 주어지고, M줄에 걸쳐 도로정보 와 비용(20 이하의 자연수)이 주어진다. 만약 1번 도시와 2번도시가 연결되고 그 비용이 13이 면 “1 2 13”으로 주어진다. 모든 도시에서 모든 도시로 이동하는데 드는 최소 비용을 아래와 같이 출력한다. 자기자신으로 가는 비용은 0입니다. i번 정점에서 j번 정점으로 갈 수 없을 때... pythonalgorithmCodingTestCodingTest Part7.10_동적프로그래밍(DynamicProgramming)_동전교환(냅색 알고리즘) 첫 번째 줄에는 동전의 종류개수 N(1<=N<=12)이 주어진다. 두 번째 줄에는 N개의 동전의 종 류가 주어지고, 그 다음줄에 거슬러 줄 금액 M(1<=M<=500)이 주어진다. 첫 번째 줄에 거슬러 줄 동전의 최소개수를 출력한다. 냅색 알고리즘을 이용한다. 냅색 알고리즘은 참 재밌는거 같다 냅색 알고리즘 설명 냅색 알고리즘은 담을 수 있는 물건이 나눌 수 있냐 없냐에 따라 나눈다. 담을 ... pythonalgorithmCodingTestCodingTest P_10866 덱 시간 제한 메모리 제한 정답 정답 비율 0.5 초 (추가 시간 없음) 정수를 저장하는 덱(Deque)를 구현한 다음, 입력으로 주어지는 명령을 처리하는 프로그램을 작성하시오. push_front X: 정수 X를 덱의 앞에 넣는다. push_back X: 정수 X를 덱의 뒤에 넣는다. pop_front: 덱의 가장 앞에 있는 수를 빼고, 그 수를 출력한다. 만약, 덱에 들어있는 정수가 없는 경... CodingTestCodingTest [Programmers] level 2 - 타겟 넘버 (lang: Swift) 타겟 넘버 문제 설명 n개의 음이 아닌 정수들이 있습니다. 이 정수들을 순서를 바꾸지 않고 적절히 더하거나 빼서 타겟 넘버를 만들려고 합니다. 예를 들어 [1, 1, 1, 1, 1]로 숫자 3을 만들려면 다음 다섯 방법을 쓸 수 있습니다. 사용할 수 있는 숫자가 담긴 배열 numbers, 타겟 넘버 target이 매개변수로 주어질 때 숫자를 적절히 더하고 빼서 타겟 넘버를 만드는 방법의 수를... iOSCodingTestCodingTest P_13023 ABCDE 시간 제한 메모리 제한 정답 맞힌 사람 정답 비율 사람들은 0번부터 N-1번으로 번호가 매겨져 있고, 일부 사람들은 친구이다. 오늘은 다음과 같은 친구 관계를 가진 사람 A, B, C, D, E가 존재하는지 구해보려고 한다. 위와 같은 친구 관계가 존재하는지 안하는지 구하는 프로그램을 작성하시오. 입력 첫째 줄에 사람의 수 N (5 ≤ N ≤ 2000)과 친구 관계의 수 M (1 ≤ M ≤ ... CodingTestCodingTest [Programmers] level 2 - 오픈채팅방 (lang: Swift) 카카오톡 오픈채팅방에서는 친구가 아닌 사람들과 대화를 할 수 있는데, 본래 닉네임이 아닌 가상의 닉네임을 사용하여 채팅방에 들어갈 수 있다. 채팅방에 누군가 들어오면 다음 메시지가 출력된다. "[닉네임]님이 들어왔습니다." 채팅방에서 닉네임을 변경하는 방법은 다음과 같이 두 가지이다. 채팅방에서 닉네임을 변경한다. 닉네임을 변경할 때는 기존에 채팅방에 출력되어 있던 메시지의 닉네임도 전부 변... iOSCodingTestCodingTest [Programmers] level 2 - 기능 개발 (lang: Swift) 문제 설명 프로그래머스 팀에서는 기능 개선 작업을 수행 중입니다. 각 기능은 진도가 100%일 때 서비스에 반영할 수 있습니다. 또, 각 기능의 개발속도는 모두 다르기 때문에 뒤에 있는 기능이 앞에 있는 기능보다 먼저 개발될 수 있고, 이때 뒤에 있는 기능은 앞에 있는 기능이 배포될 때 함께 배포됩니다. 먼저 배포되어야 하는 순서대로 작업의 진도가 적힌 정수 배열 progresses와 각 작... iOSCodingTestCodingTest [자바스크립트, JS] 이분 검색(Binary Search), 결정 알고리즘 문제 풀이, 개념 정리 📝 문제 소개 즉, 1번 노래와 5번 노래를 같은 DVD에 녹화하기 위해서는 1번과 5번 사이의 모든 노래도 같은 DVD에 녹화해야한다. 이 때 DVD의 크기(녹화 가능한 길이)를 최소로 하려고 한다. 문제를 간략하게 정리를 해보면, 나눠야할 DVD의 개수를 M, 각 노래의 길이가 배열로 차례대로 넘어온다. 이 DVD의 길이는 최소의 용량으로 지정하는 것이 좋으니, 노래를 자르지 않고, 9개... dicisionAlgorithmCodingTestbinary_searchJavaScriptjsCodingTest 프로그래머스 코딩테스트 연습 <문자열 내 마음대로 정렬하기> 코딩테스트 연습을 이제 막 시작해 부끄러운 수준의 내 답안과 다른 사람들의 답안을 확인해보자. 주어진 인덱스의 글자가 다른 경우 을 통해 해당 문자의 UTF-16 코드를 비교하고, 같은 경우에는 로 사전순으로 정렬하는 콜백함수를 가진 메서드를 통해 정렬한다. 주요 활용 문법 charCodeAt(), localeCompare(), sort() localeCompare()와 조건부 삼항 연산자를... CodingTestCodingTest 프로그래머스 코딩테스트 연습 <문자열 내림차순으로 배치하기> 코딩테스트 연습을 이제 막 시작해 부끄러운 수준의 내 답안과 다른 사람들의 답안을 확인해보자. 문자열 s를 split()을 통해 분리하고, 이를 sort()를 통해 오름차순으로 정렬한 후에 reverse()로 내림차순으로 변경한 다음 join()으로 합치면 된다. 주요 활용 문법 split(), sort(), reverse(), join() 거의 유사한 답안이나, 더 깔끔하게 작성하였다. 메... CodingTestCodingTest 프로그래머스 코딩테스트 연습 <문자열 다루기 기본> 코딩테스트 연습을 이제 막 시작해 부끄러운 수준의 내 답안과 다른 사람들의 답안을 확인해보자. 문자열을 분리한 후, 각 문자열의 UTF-16 코드가 65번 이상이면 알파벳이기 때문에 알파벳이 없는 경우 중, 배열의 길이가 4, 6인 경우만 반환한다. 정규표현식과 regex.test()을 활용한 답안 ^: 문자열의 시작 \d: 숫자, [0-9]와 달리 페르시안 숫자, 아랍 숫자 등을 포함한다.... CodingTestCodingTest 프로그래머스 코딩테스트 연습 <두 정수 사이의 합> 코딩테스트 연습을 이제 막 시작해 부끄러운 수준의 내 답안과 다른 사람들의 답안을 확인해보자. 먼저 두 수를 비교하여, 두 수 사이의 모든 정수의 합을 구하게끔 하는데, 이때 두 수 모두 음수가 될 수 있다는 점에 유의해야 한다. 참고로, a, b 사이의 모든 정수의 합은 (a + b) * (b - a) / 2로 계산된다. Math.abs()를 활용한 답안 를 활용해 a, b의 부호에 관계 ... CodingTestCodingTest 프로그래머스 코딩테스트 연습 <서울에서 김서방 찾기> 코딩테스트 연습을 이제 막 시작해 부끄러운 수준의 내 답안과 다른 사람들의 답안을 확인해보자. indexOf()을 활용한 답안 indexOf() 메서드를 활용해 해당 문자열이 존재하는 인덱스를 검색할 수 있다. 메서드는 호출한 String 객체에서 주어진 값과 일치하는 첫 번째 인덱스를 반환한다. 만약, 일치하는 값이 없으면 -1을 반환한다.... CodingTestCodingTest [Programmers] level 1 - 크레인 인형뽑기 게임 (lang: Swift) 게임 화면은 "1 x 1" 크기의 칸들로 이루어진 "N x N" 크기의 정사각 격자이며 위쪽에는 크레인이 있고 오른쪽에는 바구니가 있습니다. 모든 인형은 "1 x 1" 크기의 격자 한 칸을 차지하며 격자의 가장 아래 칸부터 차곡차곡 쌓여 있습니다. 게임 사용자는 크레인을 좌우로 움직여서 멈춘 위치에서 가장 위에 있는 인형을 집어 올릴 수 있습니다. 집어 올린 인형은 바구니에 쌓이게 되는 데,... CodingTestswiftCodingTest P.14391 종이 조각 시간 제한 메모리 제한 정답 정답 비율 영선이는 숫자가 쓰여 있는 직사각형 종이를 가지고 있다. 종이는 1×1 크기의 정사각형 칸으로 나누어져 있고, 숫자는 각 칸에 하나씩 쓰여 있다. 각 조각은 크기가 세로나 가로 크기가 1인 직사각형 모양이다. 길이가 N인 조각은 N자리 수로 나타낼 수 있다. 아래 그림은 4×4 크기의 종이를 자른 한 가지 방법이다. 각 조각의 합은 493 + 7160 ... CodingTestCodingTest 프로그래머스 코딩테스트 연습 <문자열 내 p와 y의 개수> 코딩테스트 연습을 이제 막 시작해 부끄러운 수준의 내 답안과 다른 사람들의 답안을 확인해보자. match()와 정규표현식을 활용해서 문자열에서 정규표현식이 일치하는 부분을 검색하여 해결하고자 했으나, 테스트 과정에서 런타임 에러가 발생했다. 추측하기로는 정규표현식으로 문자열을 검색하는 과정이 오래 걸리기 때문이라고 생각된다. 또한, match()에 의해 문자열을 검색할 때, p, y가 존재하... CodingTestCodingTest 1부터 N까지 합 구하기 1. 1부터 n까지 정수의 합 구하기 index 값을 계속 더해준다고 생각하면 됩니다. 2. 배열 값 모두 더하기 배열 값의 합은 Array의 reduce(리듀서) 메소드를 사용하면 쉽게 구할 수 있습니다. reduce()는 배열 내에 존재하는 각 요소에 대해 callback 함수를 한 번씩 실행하는데, 콜백 함수는 accumulator, currentValue, currentIndex, a... CodingTestCodingTest P.11727 2xn 타일링 2 시간 제한 메모리 제한 제출 정답 맞힌 사람 정답 비율 1 초 256 MB 문제 2×n 직사각형을 1×2, 2×1과 2×2 타일로 채우는 방법의 수를 구하는 프로그램을 작성하시오. 아래 그림은 2×17 직사각형을 채운 한가지 예이다. 입력 첫째 줄에 n이 주어진다. (1 ≤ n ≤ 1,000) 출력 첫째 줄에 2×n 크기의 직사각형을 채우는 방법의 수를 10,007로 나눈 나머지를 출력한다.... CodingTestCodingTest P.11726 2xn 타일링 시간 제한 메모리 제한 제출 정답 맞힌 사람 정답 비율 1 초 256 MB 문제 2×n 크기의 직사각형을 1×2, 2×1 타일로 채우는 방법의 수를 구하는 프로그램을 작성하시오. 아래 그림은 2×5 크기의 직사각형을 채운 한 가지 방법의 예이다. 입력 첫째 줄에 n이 주어진다. (1 ≤ n ≤ 1,000) 출력 첫째 줄에 2×n 크기의 직사각형을 채우는 방법의 수를 10,007로 나눈 나머지... CodingTestCodingTest Programmers 커뮤러닝/3기/JAVA/코딩테스트 실력 UP 패키지 - 1주차_예산 ❤️ github 주소 : 알고리즘 공부가 필요한게 느껴져 Programmers 커뮤러닝 을 신청했다 커리큘럼은 아래와같다 다른사람에게 나의 코드를 리뷰받을수 있어 좋은것 같다 첫째주는 그리디/정렬/이분탐색/시뮬레이션 에 해당하는 문제를 풀고 그다음주에 수강생들끼리 코드리뷰를 한 후 알고리즘 개념학습 및 풀이 강의를 본다 내가 푼 첫번째 문제 : Programmers 예산 나의 답안... JavaprogrammersCodingTestCodingTest 이전 기사 보기