본문 바로가기

전체 글158

[코딩테스트] Level. 1 행렬의 덧셈 Kotlin 문제 설명 행렬의 덧셈은 행과 열의 크기가 같은 두 행렬의 같은 행, 같은 열의 값을 서로 더한 결과가 됩니다. 2개의 행렬 arr1과 arr2를 입력받아, 행렬 덧셈의 결과를 반환하는 함수, solution을 완성해주세요. 제한 조건 행렬 arr1, arr2의 행과 열의 길이는 500을 넘지 않습니다. 입출력 예 [[1,2],[2,3]] [[3,4],[5,6]] [[4,6],[7,9]] [[1],[2]] [[3],[4]] [[4],[6]] 이번문제는 2차 for문을 이용해서 문제를 풀어야겠다 라는 생각까진 했지만 뜻대로 되지않아 못풀었다. arr1.forEachIndexed { index, value -> arr2.forEachIndexed { index2, value2 -> } } 다른분의 풀이. A.. 2023. 2. 22.
[Android Studio] 리사이클러뷰 item 하단 짤렸을 경우 https://jgeun97.tistory.com/230 [Android] RecyclerView 마지막 layout 잘림 현상 RecyclerView 작업을 하다보면 맨 마지막 item이 잘리는 경우가 발생합니다. 1. ConstraintLayout 으로 상위 Layout이 구성되어있는 경우 RecyclerView를 Bottom을 연결하지 않고 height에 wrap_content를 입력하여 구현 jgeun97.tistory.com RecyclerView 작업을 하다보면 맨 마지막 item이 잘리는 경우가 발생합니다. 1. ConstraintLayout 으로 상위 Layout이 구성되어있는 경우 RecyclerView를 Bottom을 연결하지 않고 height에 wrap_content를 입력하여 구현하.. 2023. 2. 21.
[코딩테스트] Level. 1 핸드폰 번호 가리기 Kotlin 문제 설명 프로그래머스 모바일은 개인정보 보호를 위해 고지서를 보낼 때 고객들의 전화번호의 일부를 가립니다. 전화번호가 문자열 phone_number로 주어졌을 때, 전화번호의 뒷 4자리를 제외한 나머지 숫자를 전부 *으로 가린 문자열을 리턴하는 함수, solution을 완성해주세요. 제한 조건 phone_number는 길이 4 이상, 20이하인 문자열입니다. 입출력 예 "01033334444" "*******4444" "027778888" "*****8888" 나의 풀이 . private fun solution(phone_number: String): String { var c = "" phone_number.toList().mapIndexed { index, value -> if (index < ph.. 2023. 2. 18.
[코딩테스트] Level. 1 콜라츠 추측 Kotlin 1937년 Collatz란 사람에 의해 제기된 이 추측은, 주어진 수가 1이 될 때까지 다음 작업을 반복하면, 모든 수를 1로 만들 수 있다는 추측입니다. 작업은 다음과 같습니다. 1-1. 입력된 수가 짝수라면 2로 나눕니다. 1-2. 입력된 수가 홀수라면 3을 곱하고 1을 더합니다. 2. 결과로 나온 수에 같은 작업을 1이 될 때까지 반복합니다. 예를 들어, 주어진 수가 6이라면 6 → 3 → 10 → 5 → 16 → 8 → 4 → 2 → 1 이 되어 총 8번 만에 1이 됩니다. 위 작업을 몇 번이나 반복해야 하는지 반환하는 함수, solution을 완성해 주세요. 단, 주어진 수가 1인 경우에는 0을, 작업을 500번 반복할 때까지 1이 되지 않는다면 –1을 반환해 주세요. 제한 사항 입력된 수, n.. 2023. 2. 15.
[코딩테스트] Level. 1 평균 구하기 Kotlin. 문제 설명 정수를 담고 있는 배열 arr의 평균값을 return하는 함수, solution을 완성해보세요. 제한사항 arr은 길이 1 이상, 100 이하인 배열입니다. arr의 원소는 -10,000 이상 10,000 이하인 정수입니다. 입출력 예 [1,2,3,4] 2.5 [5,5] 5 나의 풀이 private fun solution(arr: IntArray): Double { var a = 0.0 arr.forEach { a += it.toDouble() } return a / (arr.size) } 다른 분의 풀이 너무나도 간결하다. fun solution(arr: IntArray): Double { return arr.average() } 2023. 2. 15.
[코딩테스트] Level. 1 최대공약수와 최소공배수 Kotlin 문제 설명 두 수를 입력받아 두 수의 최대공약수와 최소공배수를 반환하는 함수, solution을 완성해 보세요. 배열의 맨 앞에 최대공약수, 그다음 최소공배수를 넣어 반환하면 됩니다. 예를 들어 두 수 3, 12의 최대공약수는 3, 최소공배수는 12이므로 solution(3, 12)는 [3, 12]를 반환해야 합니다. 제한 사항 두 수는 1이상 1000000이하의 자연수입니다. 입출력 예 3 12 [3, 12] 2 5 [1, 10] 입출력 예 설명 입출력 예 #1 위의 설명과 같습니다. 입출력 예 #2 자연수 2와 5의 최대공약수는 1, 최소공배수는 10이므로 [1, 10]을 리턴해야 합니다. 최대공약수를 구하는 법 (gcd) 어떤 두 숫자가 a,b 가 있을 때 더 큰 숫자를 작은 숫자로 0이 될 때 까.. 2023. 2. 9.