본문 바로가기

전체 글

[프로그래머스][위클리 챌린지 - 6주차][sort] 복서 정렬하기 - 컴도리돌이 코딩테스트 연습 - 6주차 복서 선수들의 몸무게 weights와, 복서 선수들의 전적을 나타내는 head2head가 매개변수로 주어집니다. 복서 선수들의 번호를 다음과 같은 순서로 정렬한 후 return 하도록 solution 함수를 완성해주세요 programmers.co.kr sort 함수를 사용하기 위해서 벡터 함수 안에 모든 값을 저장하였다. {{선수의 몸무게, idx 값},{ 승률,자신의 몸무게보다 큰 선수를 이긴 횟수}} 비교함수에 따른 sort를 하였다. 승률이 같지 않으면 승률에 따른 정렬. 승률이 같으면 자신의 몸무게보다 큰 선수를 이긴 횟수가 같지 않으면 그에 따른 정렬..... 마지막 idx 값이 작은 순으로 정렬. #include #include #include using namesp.. 더보기
[프로그래머스][위클리 챌린지-5주차] [DFS] 5주차_모음사전 - 컴도리돌이 코딩테스트 연습 - 5주차_모음사전 사전에 알파벳 모음 'A', 'E', 'I', 'O', 'U'만을 사용하여 만들 수 있는, 길이 5 이하의 모든 단어가 수록되어 있습니다. 사전에서 첫 번째 단어는 "A"이고, 그다음은 "AA"이며, 마지막 단어는 "UUUUU"입니 programmers.co.kr 나올 수 있는 경우의 수가 10000 이하이기 때문에 DFS로 충분히 시간복잡도 생각하지 않고 풀 수 있다. alpha 라는 모음 값이 저장되어 있는 배열을 만들어서 나올 수 있는 모든 경우의 수를 map 함수를 이용해서 저장한다. 단순 구현 문제. #include #include #include using namespace std; int count =1; vector alpha = {"A","E","I",.. 더보기
[머신러닝] 선형회귀(linear regression) - 컴도리돌이 Regression "Regression toward the mean" 전체 평균으로 되돌아간다. 즉 어떤 데이터들이 굉장히 크거나 굉장히 작은 데이터들이 나와도 결과적으로, 전체적으로 봤을 때 이 데이터들은 전체 평균으로 되돌아가려는 특징을 갖고 있다. Linear Regression 종속 변수 y와 한 개 이상의 독립 변수 x와의 선형 상관관계를 모델링하는 회귀 분석 기법을 선형 회귀라고 한다. 선형 예측 함수를 사용해 회귀식을 모델링하며, 알려지지 않은 변수는 데이터로부터 추정한다. 이렇게 만들어진 회귀식을 선형 모델이라고 한다. 선형은 말 그대로 1차이기 때문에 선형 모델은 일차 모델 즉, 대표적인 일차 방정식인 직선의 방정식을 일컫는다. 그림에서 이 파란색 점들을 데이터를 의미하며, 이 데이터 .. 더보기
[프로그래머스][level2][c++] 2021 KAKAO BLIND RECRUITMENT - 순위 검색 - 컴도리돌이 > lang >> job >> level >> food >> score; vs[0][0] = lang; vs[1][0] = job; vs[2][0] = level; vs[3][0] = food; for(int i=0 ; i lang >> temp >> job >> temp >> level >> temp >> food >> score; string s = lang + job + level + food; auto itr = lower_bound(info_[s].begin(),info_[s].end(),stoi(score)); answer[index++] = info_[s].size() - (itr - info_[s].begin()); } return answer; } 더보기
[프로그래머스][Level3][c++][플로이드와샬] 2021 KAKAO BLIND RECRUITMENT - 합승 택시 요금 - 컴도리돌이 코딩테스트 연습 - 합승 택시 요금 6 4 6 2 [[4, 1, 10], [3, 5, 24], [5, 6, 2], [3, 1, 41], [5, 1, 24], [4, 6, 50], [2, 4, 66], [2, 3, 22], [1, 6, 25]] 82 7 3 4 1 [[5, 7, 9], [4, 6, 4], [3, 6, 1], [3, 2, 3], [2, 1, 6]] 14 6 4 5 6 [[2,6,6], [6,3,7], [4,6,7], [6,5,11], [2,5,12], [5,3,20], [2,4 programmers.co.kr 시작 지점에서 -> 도착 지점까지의 최소 비용을 탐색해야하기 때문에 플로이드-와샬 알고리즘을 사용해야 한다. 2차원 배열을 만들고 해당 값들을 큰 값으로 저장 시킨다. 여기서 주의해야할.. 더보기
[프로그래머스] [Level3][c++][bfs][permutation] 2021 KAKAO BLIND RECRUITMENT - 카드 짝 맞추기 - 컴도리돌이 코딩테스트 연습 - 카드 짝 맞추기 [[1,0,0,3],[2,0,0,0],[0,0,0,2],[3,0,1,0]] 1 0 14 [[3,0,0,2],[0,0,1,0],[0,1,0,0],[2,0,0,3]] 0 1 16 programmers.co.kr 카드의 수가 6장으로 제한되어 있다. 그렇기에 카드 숫자에 따른 순열 조합으로 가장 최단 거리를 조사했다. 먼저 board에 있는 카드의 숫자를 card 벡터에 저장하여, 중복된 숫자는 제거하고 next_permutation으로 bfs 탐색을 한다. bfs로 카드를 탐색하기 전에 각 순열마다 최소 거리를 구해야하기 때문에 순열이 돌때마다 board와 r, c 값은 항상 새로운 인자에 초기화 시켜준다. bfs 함수에 들어가면 방문함수와 queue를 생성했다. queu.. 더보기
[프로그래머스][Level3][c++] 2021 KAKAO BLIND RECRUITMENT -광고 삽입 코딩테스트 연습 - 광고 삽입 시간을 나타내는 HH, H1, H2의 범위는 00~99, 분을 나타내는 MM, M1, M2의 범위는 00~59, 초를 나타내는 SS, S1, S2의 범위는 00~59까지 사용됩니다. 잘못된 시각은 입력으로 주어지지 않습니다. (예: 04:60:24, 11 programmers.co.kr #include #include #include #include using namespace std; vector dp(360000,0); string solution(string play_time, string adv_time, vector logs) { string answer = ""; int start_hh,start_mm,start_ss , end_hh,end_mm,end_ss,st.. 더보기
[프로그래머스][위클리 챌린지-4주차][C++] 직업군 추천하기 - 컴도리돌이 코딩테스트 연습 - 4주차 개발자가 사용하는 언어와 언어 선호도를 입력하면 그에 맞는 직업군을 추천해주는 알고리즘을 개발하려고 합니다. 아래 표는 5개 직업군 별로 많이 사용하는 5개 언어에 직업군 언어 점수를 부 programmers.co.kr 개발자 언어 선호도를 map 함수를 이용해서 해당 언어에 대한 값을 저장해준다. table의 string 벡터에서 처음 값을 title에 저장한다. 개발자에 따른 점수를 저장할 수 있는 벡터함수를 만든다. 해당 개발자가 선호하는 언어가 언어 선호도 표에 대한 값을 더해준다. 이때 더해줄때 순서에 따른 점수가 다르기 때문에 5점부터 시작해서 1점까지 순차적으로 곱해준다. 개발자에 따른 점수 벡터함수를 정렬한다. ( 첫번째는 점수, 두번째는 문자열 ) #includ.. 더보기

728x90