전체 글
-
[프로그래머스] 소수 찾기 level1 (C++)알고리즘 & 자료구조/코딩테스트 2021. 2. 16. 20:32
문제 설명 1부터 입력받은 숫자 n 사이에 있는 소수의 개수를 반환하는 함수, solution을 만들어 보세요. 소수는 1과 자기 자신으로만 나누어지는 수를 의미합니다. (1은 소수가 아닙니다.) 제한 조건 n은 2이상 1000000이하의 자연수입니다. 입출력 예 n result 10 4 5 3 입출력 예 설명 입출력 예 #1 1부터 10 사이의 소수는 [2,3,5,7] 4개가 존재하므로 4를 반환 입출력 예 #2 1부터 5 사이의 소수는 [2,3,5] 3개가 존재하므로 3를 반환 간단히 for문을 사용하려 했는데 효율성 문제로 에라토스테네스의 체 를 사용하였다. 나의 경우 적용한 것을 간단히 설명 하자면 1. 모든 원소를 소수라고 가정한다. 2. 어떤 수 의 배수는 소수가 될 수 없으므로 범위안을 돌며..
-
[프로그래머스]약수의 합(C++)알고리즘 & 자료구조/코딩테스트 2021. 2. 16. 16:14
문제 설명 정수 n을 입력받아 n의 약수를 모두 더한 값을 리턴하는 함수, solution을 완성해주세요. 제한 사항 n은 0 이상 3000이하인 정수입니다. 입출력 예 n return 12 28 5 6 입출력 예 설명 입출력 예 #1 12의 약수는 1, 2, 3, 4, 6, 12입니다. 이를 모두 더하면 28입니다. 입출력 예 #2 5의 약수는 1, 5입니다. 이를 모두 더하면 6입니다. 1.단순하게 하나하나 탐색하며 약수를 찾아내서 더하는 방법 #include #include #include using namespace std; int solution(int n) { int answer = 0; for(int i = 1; i > n; cout n; cout
-
[프로그래머스] 평균 구하기(C++)알고리즘 & 자료구조/코딩테스트 2021. 2. 15. 23:21
문제 설명 정수를 담고 있는 배열 arr의 평균값을 return하는 함수, solution을 완성해보세요. 제한사항 arr은 길이 1 이상, 100 이하인 배열입니다. arr의 원소는 -10,000 이상 10,000 이하인 정수입니다. 입출력 예 arr return [1,2,3,4] 2.5 [5,5] 5 기본적인 문제다. 그나마 주의할점이 있다면 자료형 ? 정도 라고 생각한다. #include #include #include using namespace std; double solution(vector arr) { double answer = 0; double sum = 0; for(int i = 0; i < arr.size(); i++) { sum = sum + arr[i]; } answer = sum..