[Programmers - lv02] 기능개발 (cpp / python)
·
Algorithm/Programmers
기능개발 코딩테스트 연습 - 기능개발 프로그래머스 팀에서는 기능 개선 작업을 수행 중입니다. 각 기능은 진도가 100%일 때 서비스에 반영할 수 있습니다. 또, 각 기능의 개발속도는 모두 다르기 때문에 뒤에 있는 기능이 앞에 있는 �� programmers.co.kr 문제 설명 처음에 '스택과 큐 모두 이용해서 풀어지겠다'라는 생각에 시간이 조금 걸렸다. 오랜만에 lv02문제를 풀어서 그런지.. 1시간 정도 걸린 것 같다. 앞 쪽의 작업이 끝나기 전에는 뒤 쪽작업들을 맨 앞의 작업보다 더 오래 걸리는 작업이 생기기 전까지 모두 대기 큐에 넣어서, 대기 큐에 있는 작업들을 처리하고, 또 다음 작업들을 처리하는 방식으로 문제를 해결하려고 했다. 그런데 문제를 잘 이해해보면 문제에서는 각 작업들이 '언제' 끝..
[Programmers - lv01] 2016년 (cpp / python)
·
Algorithm/Programmers
2016년 코딩테스트 연습 - 2016년 2016년 1월 1일은 금요일입니다. 2016년 a월 b일은 무슨 요일일까요? 두 수 a ,b를 입력받아 2016년 a월 b일이 무슨 요일인지 리턴하는 함수, solution을 완성하세요. 요일의 이름은 일요일부터 토요일까�� programmers.co.kr 문제 설명 주어진 a월 b까지의 일 수를 모두 계산하여 7로 나눈 나머지를 이용하여 탐색 문제 풀이 *소스코드 : C++ * #include #include #include using namespace std; string solution(int a, int b) { string answer = ""; vector day = {"FRI","SAT","SUN","MON","TUE","WED","THU"}; ve..
[Programmers - lv01] K번째 수 (cpp / python)
·
Algorithm/Programmers
K번째 수 코딩테스트 연습 - K번째수 [1, 5, 2, 6, 3, 7, 4] [[2, 5, 3], [4, 4, 1], [1, 7, 3]] [5, 6, 3] programmers.co.kr 문제 설명 주어진 commands에 따라 array를 자르고 자른 배열의 k번째 숫자를 찾는 문제 문제 풀이 소스코드 : C++ vector의 assign()함수를 이용하여 복사하여 찾아내는 방법 ( assign은 범위를 ( , ] 로 받는다 - >개구간, 폐구간) #include #include #include #include using namespace std; vector solution(vector array, vector commands) { vector answer; for(int i = 0; i < com..
[Programmers - lv01] 체육복 (cpp / python)
·
Algorithm/Programmers
체육복 코딩테스트 연습 - 체육복 점심시간에 도둑이 들어, 일부 학생이 체육복을 도난당했습니다. 다행히 여벌 체육복이 있는 학생이 이들에게 체육복을 빌려주려 합니다. 학생들의 번호는 체격 순으로 매겨져 있어, 바로 앞번� programmers.co.kr 문제 설명 모든 학생들에게 체육복을 1개씩 주고, 잃어버린 사람은 -1 여벌이 있는 사람은 +1 하여 체육복을 가지고 있지않은 학생을 기준으로 좌, 우를 탐색하며 답을 찾아낸다. 문제 풀이 소스코드 : C++ #include #include #include using namespace std; int solution(int n, vector lost, vector reserve) { int answer = 0; vector students(n+1,1); ..
[C++/STL] STL이란?
·
C & C++/C++ STL
2019-09-03 updated 평소 알고리즘 문제를 풀면서 STL을 지양하면서 직접 자료구조를 만들어서 (예를들어 queue나 stack 같은..) 구조를 이해하며 문제에 적용시켜 푸는 것을 즐겼다. 하지만 우선순위 큐를 이용하거나 다익스트라 알고리즘이 필요한 문제들이 나오면 어떻게해야할지 막막해졌다. 그래서 STL을 공부해보기로 한다. STL 그렇다면 STL은 무엇일까? STL이란 Standard Template Library의 약자로 표준 라이브러리이다. 컨테이너(Container, 자료구조) Class/ 반복자/ 알고리즘간의 협력에 기반한 템플릿 라이브러리이다. STL없이 알고리즘을 작성할 때 내 입맛에 맞춰 작성하여 문제를 푸는 일이 생각보다 까다롭고 변수 타입에따라 여러가지 벽에 부딪히기도 ..
[Programmers - lv01] 모의고사 (cpp / python)
·
Algorithm/Programmers
모의고사 문제 설명 간단한 완전탐색 문제 문제 풀이 소스코드 : C++ #include #include #include using namespace std; vector solution(vector answers) { vector answer; vector player = {{1,2,3,4,5},{2,1,2,3,2,4,2,5},{3,3,1,1,2,2,4,4,5,5}}; vector cnt = {0,0,0}; for(int i=0; i
[2020 kakao blind recruitment] lv3 기둥과 보 설치(cpp/python)
·
Algorithm/Programmers
기둥과 보 설치 문제 설명 구현 문제이다. 머릿속으로 구현은 나름 빠르게 됐는데 코드로 옮기면서 조건을 한 두개씩 빼먹어서 시간이 오래걸렸다. 시험이 아닌데도 3시간씩 걸려서 푸는데.. 언제 이런문제를 1시간 안에 풀 수 있을까... 기둥과 보가 설치될 수 있는 조건을 명확하게 해결하여야한다. 설치할 때는 해당 위치에 기둥과 보가 설치될 수 있는지 확인하고, 삭제할 때는 삭제를 시킨 후 모든 구역에 대해 기둥과 보가 설치 할 수 있는지 없는지 확인한다. 문제 풀이 소스코드 : C++ 해당 좌표에 기둥과 보가 설치 되어있는지 확인하는 구조체 POS Map[101][101]을 선언한다. 우선 해당 좌표에 기둥과 보를 설치할 수 있는지 확인하는 두 함수 chk_pillar와 chk_beam을 구현한다. chk..
[Programmers - lv02] 124 나라의 숫자 (cpp / python)
·
Algorithm/Programmers
124 나라의 숫자 코딩테스트 연습 - 124 나라의 숫자 124 나라가 있습니다. 124 나라에서는 10진법이 아닌 다음과 같은 자신들만의 규칙으로 수를 표현합니다. 124 나라에는 자연수만 존재합니다. 124 나라에는 모든 수를 표현할 때 1, 2, 4만 사용합니다. programmers.co.kr 문제 설명 10진법을 3진법으로 바꾸는 방식으로 풀면된다. 3진법에는 0,1,2가 쓰인다면 이 문제는 1,2,4가 쓰이도록 문제를 해결한다. 문제 풀이 소스코드 : C++ 재귀를 이용한 풀이 #include #include #include using namespace std; char num[3] = {'1','2','4'}; string solution(int n) { if(!n--)return ""; ..
WONILLISM
'Algorithm' 태그의 글 목록 (2 Page)