알고리즘119 [프로그래머스] 모의고사 c++ 풀이 1.배열, one,two,three에 찍는 패턴을 저장한다. 2.배열의 인덱스를 배열의 크기로 나눈 나머지를 사용해서 배열의 첫번쨰와 마지막까지 계속 순회를 해 정답의 횟수를 저장해준다. 3. 많이 맞춘 횟수가 클수록 같다면 1,2,3번 사람수으로 정렬해준다. 4.점수가 가장 높은 사람을 출력한다. (점수가 높은 순 X ) 점수가 같다면 1,2,3번 순으로 출력한다. #include #include #include using namespace std; bool cmp(paira,pairb){ if(a.first>b.first) return true; else if(a.first 2024. 1. 19. [프로그래머스] H-Index c++ 풀이 n번 이상인용된 논문이 n번 이상 있을때 n의 최댓값이 H-Index이다. 인용된 횟수가 현재 h_index보다 크다면 h_index를 하나 더 증가시킨다. 더 이상 h_index보다 더 많이 인용된 논문이 없다면 반복문을 탈출한다. #include #include #include using namespace std; int solution(vector citations) { int answer = 0; sort(citations.begin(),citations.end(),greater()); int size = citations.size(); int h_index=0; for(int i= 0 ;ih_index) h_index++; if(h_index>citations[i]) break; } ret.. 2024. 1. 17. [프로그래머스] 가장 큰 수 c++ 풀이 숫자로 된 여러 문자열을 이어서 문자열을 만든다. 이때 문자열을 숫자로 볼때 제일 크게 만드는 문제이다. 문자열을 이을때 더 큰수가 될 수 있게 커스텀 비교함수를 만들어준다. 9 , 10이 있다면 910 과 109로 비교해준다. 67 678이 있다면 67678과 67867을 비교해준다. #include #include #include #include using namespace std; vector str_num; bool compare(string a, string b){ return a+b>b+a; } string solution(vector numbers) { string answer = ""; for(auto n : numbers){ str_num.push_back(to_string(n));.. 2024. 1. 16. [프로그래머스] k번째수 c++ 풀이 주어진 벡터의 일부분을 새로 정렬했을때 특정한 순서에 있는 숫자가 무엇인지 출력하는 문제이다. 일부분에 해당하는 범위를 새로운 벡터에 할당하고 정렬한다음에 특정한 순서에 있는 숫자를 answer에 담았다. #include #include #include #include using namespace std; vector solution(vector array, vector commands) { vector answer; for(int i=0 ; i 2024. 1. 16. 이전 1 ··· 3 4 5 6 7 8 9 ··· 30 다음