C++

· Language/C++
코딩테스트 연습 - 4주차 개발자가 사용하는 언어와 언어 선호도를 입력하면 그에 맞는 직업군을 추천해주는 알고리즘을 개발하려고 합니다. 아래 표는 5개 직업군 별로 많이 사용하는 5개 언어에 직업군 언어 점수를 부 programmers.co.kr 개발자 언어 선호도를 map 함수를 이용해서 해당 언어에 대한 값을 저장해준다. table의 string 벡터에서 처음 값을 title에 저장한다. 개발자에 따른 점수를 저장할 수 있는 벡터함수를 만든다. 해당 개발자가 선호하는 언어가 언어 선호도 표에 대한 값을 더해준다. 이때 더해줄때 순서에 따른 점수가 다르기 때문에 5점부터 시작해서 1점까지 순차적으로 곱해준다. 개발자에 따른 점수 벡터함수를 정렬한다. ( 첫번째는 점수, 두번째는 문자열 ) #includ..
· Language/C++
코딩테스트 연습 - 경주로 건설 [[0,0,0,0,0,0,0,1],[0,0,0,0,0,0,0,0],[0,0,0,0,0,1,0,0],[0,0,0,0,1,0,0,0],[0,0,0,1,0,0,0,1],[0,0,1,0,0,0,1,0],[0,1,0,0,0,1,0,0],[1,0,0,0,0,0,0,0]] 3800 [[0,0,1,0],[0,0,0,0],[0,1,0,1],[1,0,0,0]] 2100 [[0,0,0,0,0,0],[0,1,1,1,1,0],[0,0,1,0,0,0],[1,0,0,1,0,1],[ programmers.co.kr 문제를 보자마자 DFS와 BFS를 떠올렸고, DFS가 더 자신있기에 DFS로 문제를 풀기로 결심했다. 처음 가볍게 코드를 짰고 주어진 테스트케이스가 운좋게 통과되었지만 제출하는 동시에 50..
· Language/C++
코딩테스트 연습 - [1차] 추석 트래픽입력: [ "2016-09-15 20:59:57.421 0.351s", "2016-09-15 20:59:58.233 1.181s", "2016-09-15 20:59:58.299 0.8s", "2016-09-15 20:59:58.688 1.041s", "2016-09-15 20:59:59.591 1.412s", "2016-09-15 21:00:00.464 1.466s", "2016-09-15 21:00:00.741 1.581s", "2016-09-1programmers.co.kr  주어진 문자열을 split 처리를 해준다. c++ 사용자는 substr을 연습하기에 좋을 것이다. substr(시작 위치, 길이) 주어진 문자열을 시간, 분, 초, (밀리) 초 까지 나누어..
· Language/C++
코딩테스트 연습 - [3차] 방금그곡 방금그곡 라디오를 자주 듣는 네오는 라디오에서 방금 나왔던 음악이 무슨 음악인지 궁금해질 때가 많다. 그럴 때 네오는 다음 포털의 '방금그곡' 서비스를 이용하곤 한다. 방금그곡에서는 TV, programmers.co.kr 처음 구현할 때 어렵지 않게 코드를 작성했지만, 생각보다 어렵게 걸렸다. #에 대한 처리를 하지 않아서 다른 분의 코드를 참고해서 치환이라는 좋은 아이디어가 있어 #이 붙어진 음표를 소문자로 치환을 했다. 치환을 하고 나서 아직도 여러 테스트 케이스에서 오답처리가 되어서 뭐가 문제일까 고민을 하다가,, 음악의 치환 위치를 잘못 선정하여 여러 테스트 케이스에서 오답에 생겼던 거다. 하지만 위치 선정을 하고 나서도 15,29,30번에서 테스트 케이스에서..
· Language/C++
코딩테스트 연습 - [3차] 압축 TOBEORNOTTOBEORTOBEORNOT [20, 15, 2, 5, 15, 18, 14, 15, 20, 27, 29, 31, 36, 30, 32, 34] programmers.co.kr A~Z 까지 map 함수에서 값을 저장한다. 반복문으로 msg 길이만큼 실행 시킨다. 임시 string w에 msg값을 저장하여 해당 값이 map 함수에 있는지 조사한다. 만약 있을 경우 msg의 다음 문자를 탐색하기 위해 j값을 1 증가 시키고 w값에 다음 msg 값을 저장한다. 탐색도중 해당 string w를 찾지 못했으면 while문에 빠져나와서 map 함수에 해당 w 에 대한 값을 업데이트 시킨후 벡터 함수 answer에 w의 전 값을 저장한다. w의 전 값은 단순히 pop_b..
· Language/C++
코딩테스트 연습 - 거리두기 확인하기 [["POOOP", "OXXOX", "OPXPX", "OOXOX", "POXXP"], ["POOPX", "OXPXP", "PXXXO", "OXXXO", "OOOPP"], ["PXOPX", "OXOXP", "OXPOX", "OXXOP", "PXPOX"], ["OOOXX", "XOOOX", "OOOXX", "OXOOX", "OOOOO"], ["PXPXP", "XPXPX", "PXPXP", "XPXPX", "PXPXP"]] [1, 0, 1, 1, 1] programmers.co.kr 장소안에서 'P'가 나올 시 해당 i와 j 값에 대해서 방문 표시를 하고 DFS 탐색을 한다. DFS에서는 해당 문자열 벡터와 방문 bool 함수와 'P'의 좌표 마지막으로 deep이라는 매개..
· Language/C++
코딩테스트 연습 - 수식 최대화 IT 벤처 회사를 운영하고 있는 라이언은 매년 사내 해커톤 대회를 개최하여 우승자에게 상금을 지급하고 있습니다. 이번 대회에서는 우승자에게 지급되는 상금을 이전 대회와는 다르게 다음과 programmers.co.kr 주어진 문자열에서 숫자와 수식을 구분하여 각 벡터에 저장한다. (first_job 함수에서 처리) -> stringstream으로 문자열을 처리하였고 처음에 나오는 숫자를 먼저 숫자 벡터에 push를 한 후에 반복문을 사용하여 순차적으로 수식과 숫자를 각 벡터에 저장한다. 주어진 문자열을 숫자와 수식을 구분하였으면, 다음 함수 second_job으로 이동한다. next_permutation을 사용하였고, 수식은 최대 3개 이기 때문에 경우의 수는 6가지 밖에 ..
· Language/C++
코딩테스트 연습 - [1차] 프렌즈4블록 프렌즈4블록 블라인드 공채를 통과한 신입 사원 라이언은 신규 게임 개발 업무를 맡게 되었다. 이번에 출시할 게임 제목은 "프렌즈4블록". 같은 모양의 카카오프렌즈 블록이 2×2 형태로 4개가 붙 programmers.co.kr 구현 능력을 테스트하기 위한 문제이다. 하지만 필자는 생각보다 오래 걸렸다. search_2_2 함수 : 2 X 2 배열 기준으로 똑같은 문자열을 갖고 있는 첫번째 x,y 좌표를 queue 에 삽입한다. delete_same : queue에 존재하는 x,y 좌표를 꺼내서 해당 2 X 2 배열을 ' '로 없애버린다. 빈 공간을 fill 함수를 통해서 채워준다. 채워줄 때 queue의 사이즈 * 행의 크기 만큼 채워준다. 반례 체크) ↓↓↓ ..
행복한쿼콰
'C++' 태그의 글 목록 (3 Page)