본문 바로가기

코딩테스트

(5)
프로그래머스>코딩테스트 입문>최빈값 구하기 (C++) | sort, max_element 나의 풀이 #include #include #include using namespace std; int solution(vector array) { vector frequency; int cnt = 0; int num; sort(array.begin(), array.end()); num = array.at(0); for(auto& a : array) { if(a != num) { num = a; frequency.push_back(cnt); cnt = 0; } cnt++; } frequency.push_back(cnt); int max_num = *max_element(frequency.begin(), frequency.end()); int max_index = max_element(frequency.b..
프로그래머스>코딩테스트 입문>짝수 홀수 개수 (C++) 나의 풀이 #include #include using namespace std; vector solution(vector num_list) { vector answer; int even = 0; int odd = 0; for(auto& n : num_list) { if (n % 2 == 0) { even++; } else { odd++; } } answer.push_back(even); answer.push_back(odd); return answer; } 다른 사람의 코드 #include #include using namespace std; vector solution(vector num_list) { vector answer(2, 0); for (int num : num_list) { answer[n..
프로그래머스>코딩테스트 입문배열 두 배 만들기 (C++) | auto& 나의 풀이 #include #include using namespace std; vector solution(vector numbers) { vector answer; for (auto& n : numbers) { answer.push_back(n * 2); } return answer; } vector 클래스에서 요소를 하나씩 꺼내오기 위해서 반복문을 사용하였다. 이 때 auto& 을 사용했는데 이는 초기화 값에 따라 타입을 추론해서 결정해주는 키워드이다.
프로그래머스>코딩테스트 입문>분수의 덧셈 (C++) | 최대공약수, 최소공배수 나의 풀이 #include #include #include using namespace std; vector solution(int numer1, int denom1, int numer2, int denom2) { vector answer; int numer , denom; int gcd_num; numer = numer1 * denom2 + numer2 * denom1; denom = denom1 * denom2; gcd_num = gcd(numer, denom); while(gcd_num != 1) { numer /= gcd_num; denom /= gcd_num; gcd_num = gcd(numer, denom); } answer.push_back(numer); answer.push_back(den..
프로그래머스>코딩테스트 입문>숫자 비교하기 (C++) 나의 코드 #include #include using namespace std; int solution(int num1, int num2) { int answer = 0; if (num1 == num2) { answer = 1; } else { answer = -1; } return answer; } 다른 사람의 코드 #include #include using namespace std; int solution(int num1, int num2) { return num1 == num2 ? 1 : -1; } 짧고 간결한 코드가 무조건 좋은 것일까? 그렇게 생각하던 때도 있었지만 나중에 그렇게 짠 코드를 볼 때 오히려 한 눈에 알아보기 힘들었던 기억도 있다. 이런 간단한 코드라면 저렇게 삼항연산자를 쓰는게 좋..