본문 바로가기

Computer Science34

프로그래머스 알고리즘 문제[평균 구하기] 정수를 담고 있는 배열 arr의 평균값을 return하는 함수, solution을 완성해보세요. # 제한사항 - arr은 길이 1 이상, 100 이하인 배열입니다. - arr의 원소는 -10,000 이상 10,000 이하인 정수입니다. # 입출력 예 # 풀이 class Solution { fun solution(arr: IntArray): Double = arr.average() } # 다른사람 풀이 class Solution { fun solution(arr: IntArray): Double { return arr.sum().toDouble() / arr.size } } 2024. 2. 24.
프로그래머스 알고리즘 문제[짝수와 홀수] 정수 num이 짝수일 경우 "Even"을 반환하고 홀수인 경우 "Odd"를 반환하는 함수, solution을 완성해주세요. # 제한 사항num은 int 범위의 정수입니다.0은 짝수입니다. # 입출력 예 # 풀이class Solution { fun solution(num: Int): String = if(num%2 == 0) "Even" else "Odd" } # 다른사람 풀이class Solution { fun solution(num: Int): String { return when { num % 2 == 0 -> "Even" else -> "Odd" } }} 2024. 2. 24.
프로그래머스 알고리즘 문제[배열의 평균값] 정수 배열 numbers가 매개변수로 주어집니다. numbers의 원소의 평균값을 return하도록 solution 함수를 완성해주세요. # 제한사항 0 ≤ numbers의 원소 ≤ 1,000 1 ≤ numbers의 길이 ≤ 100 정답의 소수 부분이 .0 또는 .5인 경우만 입력으로 주어집니다. # 입출력 예 # 풀이 class Solution { fun solution(numbers: IntArray): Double { return numbers.average() } } 코틀린 라이브러리인 average함수로 쉽게 평균값을 구할수있다 average함수는 합을 계산한다음 나누어 평균을 구하는 모든 작업에 사용될수있다 # 다른 사람의 풀이 fun solution(numbers: IntArray): Dou.. 2024. 2. 24.
프로그래머스 알고리즘 문제[짝수의합] 정수 n이 주어질 때, n이하의 짝수를 모두 더한 값을 return 하도록 solution 함수를 작성해주세요. 제한사항 0 < n ≤ 1000 0 부터 1000 이하의 숫자 중 1부터 n까지의 범위에 속하는 모든 짝수들을 더해서 리턴하면 된다. ex) n =10 , 2+4+6+8+10 = 30 리턴 class Solution { fun solution(n: Int): Int { var a : Int = 0 // 반복문 돌기 (1부터 n까지) for(i : Int in 1..n){ // 만약 i가 짝수면, a에 i를 더해라 if(i % 2 == 0){ a += i } } return a } } # 다른 사람의 풀이 class Solution { fun solution(n: Int) = (0..n).fil.. 2024. 2. 24.
프로그래머스 알고리즘 문제[각도기] 각에서 0도 초과 90도 미만은 예각, 90도는 직각, 90도 초과 180도 미만은 둔각 180도는 평각으로 분류합니다. 각 angle이 매개변수로 주어질 때 예각일 때 1, 직각일 때 2, 둔각일 때 3, 평각일 때 4를 return하도록 solution 함수를 완성해주세요. 예각 : 0 2 (angle in 91..179) -> 3 else -> 4 } } class Solution { fun solution(angle: Int): Int { return when (angle) { in 1 until 90 -> 1 90 -> 2 in .. 2024. 2. 1.
프로그래머스 알고리즘 문제[두수의 나눗셈] 정수 num1과 num2가 매개변수로 주어질 때, num1을 num2로 나눈 값에 1,000을 곱한 후 정수 부분을 return 하도록 soltuion 함수를 완성해주세요. class Solution { fun solution(num1: Int, num2: Int): Int { return (num1.toDouble()/num2.toDouble()*1000).toInt() } } [코드 설명] num1 = 3, num2 = 2 이면, 3 / 2 = 1.5 이고, 1.5*1000 = 1500이된다 num1 = 7, num2 = 3 이면, 7 / 3 = 2.33333... 이고, 2.33333...*1000 = 2333.33..이되며, 정수부분은 2333이다 num1 = 1, num2 = 16 이면, 1/ .. 2024. 1. 31.