전체 글
-
[프로그래머스] 정수 내림차순으로 배치하기Coding Test/programmers 2022. 9. 12. 16:20
문제 설명 함수 solution은 정수 n을 매개변수로 입력받습니다. n의 각 자릿수를 큰것부터 작은 순으로 정렬한 새로운 정수를 리턴해주세요. 예를들어 n이 118372면 873211을 리턴하면 됩니다. 제한 사항 n은 1이상 8000000000 이하인 자연수입니다. 입출력 예 n return 118372 873211 풀이 #include #include #include using namespace std; long long solution(long long n) { long long answer = 0; string strN = to_string(n); sort(strN.begin(), strN.end(), greater()); //greater() answer = stol(strN); return ..
-
[프로그래머스] 자연수 뒤집어 배열로 만들기 c++Coding Test/programmers 2022. 9. 12. 16:16
문제 설명 자연수 n을 뒤집어 각 자리 숫자를 원소로 가지는 배열 형태로 리턴해주세요. 예를들어 n이 12345이면 [5,4,3,2,1]을 리턴합니다. 제한 사항 n은 10,000,000,000이하인 자연수입니다. 입출력 예 n return 12345 [5,4,3,2,1] 풀이 #include #include using namespace std; vector solution(long long n) { vector answer; while(n > 0){ answer.push_back(n % 10); n /= 10; } return answer; }
-
[프로그래머스] 평균 구하기 c++Coding Test/programmers 2022. 9. 12. 16:11
문제 설명 정수를 담고 있는 배열 arr의 평균값을 return하는 함수, solution을 완성해보세요. 제한 사항 arr은 길이 1 이상, 100 이하인 배열입니다. arr의 원소는 -10,000 이상 10,000 이하인 정수입니다. 입출력 예 arr return [1,2,3,4] 2.5 [5,5] 5 풀이 sum 기능을 하는 accumulate 함수를 사용해서 풀었다. #include #include #include using namespace std; double solution(vector arr) { double answer = 0; answer = accumulate(arr.begin(), arr.end(), 0) / double(arr.size()); return answer; }
-
[프로그래머스] 정수 제곱근 판별 c++Coding Test/programmers 2022. 9. 12. 15:54
문제 설명 임의의 양의 정수 n에 대해, n이 어떤 양의 정수 x의 제곱인지 아닌지 판단하려 합니다. n이 양의 정수 x의 제곱이라면 x+1의 제곱을 리턴하고, n이 양의 정수 x의 제곱이 아니라면 -1을 리턴하는 함수를 완성하세요. 제한 사항 n은 1이상, 50000000000000 이하인 양의 정수입니다. 입출력 예 n return 121 144 3 -1 풀이 #include #include #include using namespace std; long long solution(long long n) { long long answer = 0; answer = sqrt(n); if(answer * answer != n) return -1; return (answer + 1) * (answer + 1);..
-
[프로그래머스] 자릿수 더하기 c++Coding Test/programmers 2022. 9. 12. 15:42
문제 설명 자연수 N이 주어지면, N의 각 자릿수의 합을 구해서 return 하는 solution 함수를 만들어 주세요. 예를들어 N = 123이면 1 + 2 + 3 = 6을 return 하면 됩니다. 제한 사항 N의 범위 : 100,000,000 이하의 자연수 입출력 예 N answer 123 6 987 24 풀이 #include #include using namespace std; int solution(int n) { int answer = 0; string strN = to_string(n); for(const auto &it : strN){ answer += it - '0'; } return answer; } 다른 풀이 int solution(int n) { int answer = 0; whil..
-
[프로그래머스] 짝수와 홀수 c++Coding Test/programmers 2022. 9. 12. 15:28
문제 설명 정수 num이 짝수일 경우 "Even"을 반환하고 홀수인 경우 "Odd"를 반환하는 함수, solution을 완성해주세요. 제한 사항 num은 int 범위의 정수입니다. 0은 짝수입니다. 입출력 예 num return 3 "Odd" 4 "Even" 풀이 num % 2 결과로 음수가 나올 수 있으니 절댓값으로 계산한다. #include #include #include using namespace std; string solution(int num) { string answer = ""; if(abs(num) % 2 == 1){ return "Odd"; } return "Even"; } And연산으로 짝수, 홀수를 판단하는 방법도 있다. #include #include using namespace..