• Image placeholder
  • 홈 페이지
  • 블로그 센터
  • 범주
Image placeholder

programmers

프로그래머스 Lv.2 - 단체사진 찍기

그런데 각자가 원하는 배치가 모두 달라 어떤 순서로 설지 정하는데 시간이 오래 걸렸다. 네오는 프로도와 나란히 서기를 원했고, 튜브가 뿜은 불을 맞은 적이 있던 라이언은 튜브에게서 적어도 세 칸 이상 떨어져서 서기를 원했다. 사진을 찍고 나서 돌아오는 길에, 무지는 모두가 원하는 조건을 만족하면서도 다르게 서는 방법이 있지 않았을까 생각해보게 되었다. 각 프렌즈가 원하는 조건을 입력으로 받았...

Lv2programmersconding testLv2

<Programmers> Lv2. String, Stack_짝지어 제거하기 c++

Solution 1 탐색하다가 2개가 겹쳐서 나오는 부분이 있으면 해당 부분을 '_'으로 만들어주고 다시 처음부터 순회하는 방법을 사용했다 문자열의 길이는 최대 1,000,000이므로 O(N^2)의 시간 복잡도를 가지므로 최대 1,000,000 X 1,000,000 의 시간 복잡도를 가지게 되어 효율성에서 틀렸다 Solution 2 Stack을 사용하여 글자를 하나씩 넣어보며 top에 있는 ...

StringprogrammersstackalgorithmString

[ MySQL / Programmers ] 입양 시각 구하기 (2)

ANIMAL_OUTS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, NAME, SEX_UPON_OUTCOME는 각각 동물의 아이디, 생물 종, 입양일, 이름, 성별 및 중성화 여부를 나타냅니다. 보호소에서는 몇 시에 입양이 가장 활발하게 일어나는지 알아보려 합니다. 0시부터 23시까지, 각 시간대별로 입양이 몇 건이나 발생했는지 조회하는 SQL문을...

재귀 테이블programmersquerymysqlmysql

프로그래머스 고양이 사진 검색 사이트 - 개발 (검색 페이지)

main.js ← App.js ← api/api.js ← components(floder) ← SearchInput.js ← SearchError.js ← SearchKeyword.js ← SearchResult.js ← ImageInfo.js ← Loading.js ← lib ← LocalStorage.js ← LazyLoading.js 해당 문자는 로 고양고양이 캐릭터 일러스트를 딩벳으로...

catphotoprogrammerscatphoto

프로그래머스 완주하지 못한 선수

hashprogrammerscppalgorithmalgorithm

[ Programmers / CodingTest / Python ] 조이스틱

조이스틱으로 알파벳 이름을 완성하세요. 맨 처음엔 A로만 이루어져 있습니다. ex) 완성해야 하는 이름이 세 글자면 AAA, 네 글자면 AAAA 조이스틱을 각 방향으로 움직이면 아래와 같습니다. 예를 들어 아래의 방법으로 "JAZ"를 만들 수 있습니다. 만들고자 하는 이름 name이 매개변수로 주어질 때, 이름에 대해 조이스틱 조작 횟수의 최솟값을 return 하도록 solution 함수를 ...

coding testprogrammerspythoncoding test

프로그래머스 60057번 - 문자열 압축

내 풀이 링크 : 문제를 해결했지만 좋은 코드라고 생각할 수 없을 것 같아 다른 개발자 분들의 좋은 풀이들을 보고 이해하여 내 것으로 만들어보려고 한다. 예시(s = "abcabcdedede") (예시: range = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12] 이렇게 작성하여 range = [1, 2, 3, 4, 5, 6]으로만 해도 코드에 문제가 없고 map에 ...

programmersJavaScriptJavaScript

[Programmers]Lv2_행렬 테두리 회전하기_JavaScript

전체 소스 코드 문제 설명 rows x columns 크기인 행렬이 있습니다. 행렬에는 1부터 rows x columns까지의 숫자가 한 줄씩 순서대로 적혀있습니다. 이 행렬에서 직사각형 모양의 범위를 여러 번 선택해, 테두리 부분에 있는 숫자들을 시계방향으로 회전시키려 합니다. 각 회전은 (x1, y1, x2, y2)인 정수 4개로 표현합니다. 행렬의 rows, columns, 그리고 회전...

programmersJavaScriptalgorithmJavaScript

[ Programmers / CodingTest / Python ] 줄 서는 방법

n명의 사람이 일렬로 줄을 서고 있습니다. n명의 사람들에게는 각각 1번부터 n번까지 번호가 매겨져 있습니다. n명이 사람을 줄을 서는 방법은 여러가지 방법이 있습니다. 예를 들어서 3명의 사람이 있다면 다음과 같이 6개의 방법이 있습니다. 사람의 수 n과, 자연수 k가 주어질 때, 사람을 나열 하는 방법을 사전 순으로 나열 했을 때, k번째 방법을 return하는 solution 함수를 완...

coding testprogrammerspythoncoding test

코딩테스트 공부 5

신규아이디 추천 python 3 문제를 읽으면서 딱 정규표현식을 써야겠구나 라고 생각했다. 하지만 정규표현식 사용법이 잘 기억나지 않아서 다른방법이 없을까 하고 한참 고민을 했다. 이것 저것 찾아보다가 String.punctuation 이라는걸 알게 되었다. 정규 표현식 없이도 특수문자들을 걸러낼 수 있었다. 연속된 "."을 제거하는 코드는 answer.replace("..", ".") 를 ...

coding testprogrammersalgorithmalgorithm

알고리즘 문제만 풀면 자동으로 레포지에 푸시가 된다고?

자연스럽게 자료구조, 알고리즘을 공부하게 되면서 여러 온라인 저지 사이트들을 이용하게 되었다. 대표적인 알고리즘 온라인 저지 사이트는 등이 있다. 이 외에도 컨테스트나 대회가 열리는 코드포스, 앳코더 등이 있지만 아직 알고리즘 하수인 나에겐 머나먼 일이고, 지금 작성하는 글의 내용과는 거리가 좀 있어서 더 다루지는 않겠다. 이 글에서는 LeetCode, 백준, 프로그래머스를 다룬다. 단순하게...

bojprogrammersBaekjoonHubLeetHubleetcodeBaekjoonHub

프로그래머스 | 문자열 다루기 기본 javascript

👩🏻‍💻 JS coding test | 알고리즘 Level1 💻 작성코드 1 💡풀이 💻 작성코드 2 💡풀이 💻 작성코드 3 💡풀이...

programmersJavaScriptJavaScript

[Algorithm] 프로그래머스 - 완주하지 못한 선수

문제 설명 수많은 마라톤 선수들이 마라톤에 참여하였습니다. 단 한 명의 선수를 제외하고는 모든 선수가 마라톤을 완주하였습니다. 마라톤에 참여한 선수들의 이름이 담긴 배열 participant와 완주한 선수들의 이름이 담긴 배열 completion이 주어질 때, 완주하지 못한 선수의 이름을 return 하도록 solution 함수를 작성해주세요. 마라톤 경기에 참여한 선수의 수는 1명 이상 1...

programmersalgorithmJavaScriptJavaScript

0414 약수의 합

문제 설명 정수 n을 입력받아 n의 약수를 모두 더한 값을 리턴하는 함수, solution을 완성해주세요. 제한 조건 n은 0이상 3000이하인 정수입니다. 입출력 예 return 입출력 예 설명 입출력 예 #1 12의 약수는 1,2,3,4,6,12 입니다.이를 모두 더하면 28입니다. 5의 약수는 1,5 입니다. 이를 모두 더하면 6입니다. 기본코드 정답코드 문제풀이 약수는 1부터 시작이기...

programmersJavaJava

Lv.1 - 모든 레코드 조회하기, Lv.2 - 고양이와 개는 몇 마리 있을까

이해 테이블 ANIMAL_INS 구조 ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE를 그대로 출력하고 ✏️ 한가지 조건 ANIMAL_ID 순으로 조회하는 SQL문이다. 소스 이해 ANIMAL_TYPE이 같은 것들끼리 GROUP으로 묶어서 조회하기 위해, GROUP BY를 사용한다. 이에 대하여 COUNT(A...

programmerssqlprogrammers

프로그래머스 카드 짝 맞추기

python cpp 풀이법은 bfs와 dfs를 사용해서 모든 경우의 수를 다 탐색하는 것입니다. 예를 들어서 블록의 종류가 3개라면 이렇게 모든 경우를 다 탐색하는데 이 때 블록의 한쌍이 2개이기 때문에 1번째 블록을 먼저 지우고 2번째 블록을 지우는 경우와 2번째 블록을 지우고 1번째 블록을 지우는 경우까지 전부 생각해서 구현해주면 됩니다 그리고 블록간의 거리는 문제에서 주어진 조건으로 b...

DFSalgorithm카카오 기출programmerscpppythonBFSGraphsimulationBFS

프로그래머스 GPS

먼저 인접리스트 방식으로 그래프를 구현해줬습니다 문제에서 노드는 그 자리에 머무를 수도 있기 때문에 리스트에 자기 자신의 노드도 포함시켜주는 것이 뽀인트입니다. dp테이블을 만들고 무한으로 초기화 시켜줬습니다 dp에는 오류회수가 저장 되는데 처음 시작점은 0으로 초기화 해줍니다 dp테이블을 돌면서 값을 갱신해주는데 현재 값이 INF라면 넘깁니다 무한이 아니라면 현재 노드와 연결된 곳들을 다 ...

programmerscppDP카카오 기출DP

0415 모의고사

문제 설명 수포자는 수학을 포기한 사람의 준말입니다. 수포자 삼인방은 모의고사에서 수학 문제를 전부 찍으려합니다. 수포자는 1번 문제부터 마지막 문제까지 다음과 같이 찍습니다. 1번 수포자가 찍는 방식 : 1,2,3,4,5,1,2,3,4,5,... 2번 수포자가 찍는 방식 : 2,1,2,3,2,4,2,5,2,1,2,... 3번 수포자가 찍는 방식 : 3,3,1,1,2,2,4,4,5,5,3,3...

programmersJavaJava

프로그래머스 등굣길

cpp python 집의 위치는 (1,1)로 고정되있고 학교의 위치는 (m,n)으로 고정되있을 때 집에서 학교까지 가는 최단경로의 수를 구하는 문제입니다. 개인적으로 n,m위치가 바뀐게 좀 불편했습니다 집에서 출발해서 오른쪽과 아래쪽으로만 움직이면 항상 최단경로이고 물웅덩이 예외처리를 해주면 문제는 어렵지 않게 풀 수 있습니다 코드를 보시면 물웅덩이는 -1로 표시해서 예외처리를 해주고 (0,...

pythonprogrammerscppDPDP

0413 하샤드 수

문제 설명 양의 정수 x가 하샤드 수이려면 x의 자릿수의 합으로 x가 나누어져야 합니다. 예를 들어 18의 자릿수 합은 1+8=9이고, 18은 9로 나누어 떨어지므로 18은 하샤드 수입니다. 자연수 x를 입력받아 x가 하샤드 수인지 아닌지 검사하는 함수, solution을 완성해주세요. 제한 조건 x는 1 이상, 10000 이하인 정수입니다. 입출력 예 arr return true true ...

programmersJavaJava

0412 자연수 뒤집어 배열로 만들기

문제 설명 자연수 n을 뒤집어 각 자리 숫자를 원소로 가지는 배열 형태로 리턴해주세요. 예를들어 n이 12345이면 [5,4,3,2,1]을 리턴합니다. 제한 조건 n은 10,000,000,000 이하인 자연수입니다. 입출력 예 return 기본코드 정답코드 문제풀이 숫자 n을 문자열로 바꾸기 위해 valueOf() 함수를 사용했다. num에 str의 길이 5가 들어가게 되고 5만큼의 길이를 ...

programmersJavaJava

0406 문자열을 정수로 바꾸기

문제 설명 문자열 s를 숫자로 변환한 결과를 반환하는 함수, solution을 완성하세요. 제한 조건 s의 길이는 1 이상 5 이하입니다. s의 맨앞에는 부호(+,-)가 올 수 있습니다. s는 부호와 숫자로만 이루어져있습니다. s는 "0"으로 시작하지 않습니다. 입출력 예 예를들어 str이 "1234" 이면 1234를 반환하고, "-1234" 이면 -1234를 반환하면 됩니다. str은 부호...

programmersJavaJava

[programmers 1] x만큼 간격이 있는 n개의 숫자

다음 제한 조건을 보고, 조건을 만족하는 함수, solution을 완성해주세요. x는 -10000000 이상, 10000000 이하인 정수입니다. n은 1000 이하인 자연수입니다. 심플한 코드가 나를 맞이해줬다. 무조건 위쪽엔 저런 짧은 코드가 있더라.. Array(n).fill(x) : n개의 길이를 가진 배열을 하나 생성해주면서, 요소를 x로 다 채우고 map() : 각 요소의 값을 현...

JavaScriptprogrammers코딩테스트연습level1JavaScript

<Programmers> Lv2 DFS_단체사진 찍기 c++

💡Summary data 원소는 다섯 글자로 구성된 문자열 첫 번째 글자와 세 번째 글자는 프렌즈들의 알파벳 앞글자 두 번째 글자는 항상 ~ 네 번째 글자는 {=, <, >}중 하나이고 프렌즈들 간 거리가 같음, 미만, 초과를 의미 다섯 번째 글자는 0이상 6이하의 정수 문자형이며 각 거리를 의미한다 💡Idea 먼저 8명의 프렌즈들이 한 줄로 서는 경우의 수를 생각한다 경우의 수는 8!이며 ...

programmersDFSkakaoalgorithmDFS

체육복 [Level 1] Python

문제 설명 점심시간에 도둑이 들어, 일부 학생이 체육복을 도난당했습니다. 다행히 여벌 체육복이 있는 학생이 이들에게 체육복을 빌려주려 합니다. 예를 들어, 4번 학생은 3번 학생이나 5번 학생에게만 체육복을 빌려줄 수 있습니다. 체육복이 없으면 수업을 들을 수 없기 때문에 체육복을 적절히 빌려 최대한 많은 학생이 체육수업을 들어야 합니다. 전체 학생의 수 n, 체육복을 도난당한 학생들의 번호...

탐욕법(Greedy)programmersLevel 1pythonLevel 1

<Programmers> 진법_124나라의 숫자

💡Summary & Idea 모든 수를 1,2,4만을 사용해서 표현 모든 수를 0,1,2,3,4,5,6,7,8,9 = 총 10개로 표현하는 숫자를 10진법이라 한다. 여기서 아이디어를 얻어 1,2,4,만을 사용해 표현하는 숫자를 3진법이라고 생각한다 ✏️ Solution 숫자 n을 3으로 나누어 나머지가 0이면 4, 1이면 1, 2이면 2를 answer에 앞으로 차례대로 추가한다 숫자 n을 ...

programmersalgorithmalgorithm

최대공약수와 최소공배수 [Level 1] Python

문제 설명 두 수를 입력받아 두 수의 최대공약수와 최소공배수를 반환하는 함수, solution을 완성해 보세요. 배열의 맨 앞에 최대공약수, 그다음 최소공배수를 넣어 반환하면 됩니다. 예를 들어 두 수 3, 12의 최대공약수는 3, 최소공배수는 12이므로 solution(3, 12)는 [3, 12]를 반환해야 합니다. 제한 사항 두 수는 1이상 1000000이하의 자연수입니다. 입출력 예 코...

programmersLevel 1python연습문제Level 1

<Programmers> Lv2 유클리드 호제법, GCD, LCM_멀쩡한 사각형 c++

(12 x 8)의 사각형에서 잘려나간 도형들은 모양을 반복하고 있는데 이 모양이 몇 번 반복되었는지 확인해본다 잘려나가는 도형이 외접하는 사각형 (3 X 2)의 사각형이 총 4번 반복됨을 알 수 있다 이는 12와 8의 최대공약수 4로 각 값을 나누면 3,2 가 된다는 사실을 알 수 있다. 그리고 외접하는 사각형에서 실제로 잘려나간 사각형은 w*h-1 개 이다 여기서 최대공약수를 구하기 위해 ...

programmersGCDLCMalgorithmGCD

약수의 개수와 덧셈 [Level 1] Python

문제 설명 두 정수 left와 right가 매개변수로 주어집니다. left부터 right까지의 모든 수들 중에서, 약수의 개수가 짝수인 수는 더하고, 약수의 개수가 홀수인 수는 뺀 수를 return 하도록 solution 함수를 완성해주세요. 제안 사항 1 ≤ left ≤ right ≤ 1,000 입출력 예 입출력 예 #1 다음 표는 13부터 17까지의 수들의 약수를 모두 나타낸 것입니다. ...

programmersLevel 1pythonLevel 1
이전 기사 보기

© 2022 intrepidgeeks.com

Privacy Policy Contact US Sitemap
🍪 This website uses cookies to ensure you get the best experience on our website. Learn more