본문 바로가기

분류 전체보기134

[Android, 내일배움캠프] 공부일지(2024-05-28) 오늘 공부한 내용 정리(2024년 5월 28일)  1. 코드카타 문제풀이A. 기사단원의 무기문제 내용 문제 풀이 방법기사 number번까지 기사가 있을 때, number의 약수의 개수만큼의 공격력을 가진 무기를 쓸 수 있다.공격력이 limit를 초과했을 경우, power의 공격력을 가진 무기로 대체된다.공격력이 3일 때, 철의 무게가 3이 필요하다. 이때 기사들에게 모두 무기를 쥐어주려면 철의 무게가 얼마나 필요한지 계산해서 return. 해결 코드(스포 주의)더보기import kotlin.math.sqrtfun solution(number: Int, limit: Int, power: Int): Int { var answer: Int = 0 repeat(number) { num -> .. 2024. 5. 28.
[Android, 내일배움캠프] 공부일지(2024-05-27) 오늘 공부한 내용 정리(2024년 5월 27일)  1. 코드카타 문제풀이A. 모의고사문제 내용 문제 풀이 방법1, 2, 3번 수포자의 정답에서 answers와 비교해 가장 많은 정답을 맞힌 수포자를 구하기.수포자의 정답지는 정답 형식에서 규칙을 찾아서 구성해야 함. 해결 코드(스포 주의)더보기// 학생 1, 2, 3이 있고, answers가 있음.// 학생 1, 2, 3의 정답을 규칙에 맞게 구성한다(answers의 size 만큼).fun solution(answers: IntArray): IntArray { // 각 학생들의 시험 찍는 규칙 val stu1 = intArrayOf(1, 2, 3, 4, 5) val stu2 = intArrayOf(2, 1, 2, 3, 2, 4, 2, 5).. 2024. 5. 27.
[Android, 내일배움캠프] 공부일지(2024-05-18) 오늘 공부한 내용 정리(2024년 5월 18일)  1. 코드카타 문제풀이A. 직사각형 별 찍기문제 내용 문제 풀이 방법n x m의 별을 찍어서 출력한다. 해결 코드(스포 주의)더보기fun main(args: Array) { val (a, b) = readLine()!!.split(' ').map(String::toInt) repeat(b) { repeat(a) { print("*") } println() }} 풀이 과정세로 길이(b)를 바깥 repeat()으로, 가로길이를 내부 repeat()으로 구성함.가로 별 찍기가 끝날 때마다 줄 바꿈을 해주어야 하기 때문이다. B. x만큼 간격이 있는 n개의 숫자 문제 내용 문제 풀이 방법x.. 2024. 5. 18.
[Android, 내일배움캠프] 공부일지(2024-05-17) 오늘 공부한 내용 정리(2024년 5월 17일)  1. 코드카타 문제풀이A. 2016년문제 내용 문제 풀이 방법a가 월이고 b가 일일 때, 2016년 해당 날짜가 무슨 요일인지 출력출력 형식은 각 날짜의 앞에서 3 단어(SATURDAY -> SAT) 해결 코드(스포 주의)더보기fun solution(a: Int, b: Int): String { val date = LocalDate.of(2016, a, b) return date.dayOfWeek.name.substring(0, 3)} 풀이 과정날짜 데이터에 LocalDate()를 이용해 정확한 날짜 정보를 생성해 줌.LocalDate().dayOfWeek.name을 하게 되면 해당 날짜에 요일을 알 수 있는데, 풀네임으로 나오기 때문에 sub.. 2024. 5. 17.
[Android, 내일배움캠프] 공부일지(2024-05-16) 오늘 공부한 내용 정리(2024년 5월 16일)  1. 코드카타 문제풀이A. 나머지가 1이 되는 수 찾기문제 내용 문제 풀이 방법n번 반복해서 n을 x로 나눈 나머지가 1인 가장 작은 수를 구한다. 해결 코드(스포 주의)더보기fun solution(n: Int): Int { var answer: Int = 0 for (i in 1..n) { if (n % i == 1) { answer = i break } } return answer} 풀이 과정1부터 n까지 반복하도록 for문 설정1부터 돌면서 첫 번째로 n % i의 결과가 1인 수를 찾아서 break후 해당 값 return. B. 내적문제 내용 문제 풀이 방법내적은 .. 2024. 5. 16.
[Android, 내일배움캠프] 공부일지(2024-05-15) 오늘 공부한 내용 정리(2024년 5월 15일)  1. 코드카타 문제풀이A. 콜라 문제문제 내용  문제 풀이 방법빈 병 a개를 가져다주면 콜라 b병을 받을 수 있다.빈 병 n개가 주어졌을 때, 받을 수 있는 콜라의 개수를 구한다.20병이 주어지고 빈 병 2개에 콜라 1병일 때, 콜라 10병을 받고 다 마시면 빈 병 10개가 된다.이 방법으로 계속 반복해서 총 받은 콜라의 개수를 구하는 문제이다. 해결 코드(스포 주의)더보기// 빈 병 a개를 가져다주면 콜라 b개를 준다.// 빈 병 n개를 주었을 때, 받을 수 있는 콜라의 개수.// 반복fun solution(a: Int, b: Int, n: Int): Int { var answer: Int = 0 var emptyBottle = n wh.. 2024. 5. 15.
[Android, 내일배움캠프] 공부일지(2024-05-14) 오늘 공부한 내용 정리(2024년 5월 14일)  1. 코드카타 문제풀이A. 푸드 파이트 대회문제 내용 문제 풀이 방법2명이 동일한 양의 음식을 먹어야 함(food에 7이 있을 때, 2명이 3개씩 먹을 수 있음).먹어야 하는 횟수만큼 string으로 합쳐서 return(한 명은 순차적으로 먹고 다른 한 명은 역순으로 먹어야 하기 때문).return: 순차적인 음식 배치 + 0 + 역순 음식 배치 해결 코드(스포 주의)더보기// 2명이 동일한 양의 음식을 먹어야 함(7이면 2명이 3개씩 먹고 1개는 버려짐).// 먹어야 하는 횟수만큼 string으로 return하면 됨.fun solution(food: IntArray): String { var setFood = "" food.forEachInd.. 2024. 5. 14.
[Android, 내일배움캠프] 공부일지(2024-05-13) 오늘 공부한 내용 정리(2024년 5월 13일)  1. 코드카타 문제풀이A. 가장 가까운 같은 글자문제 내용 문제 풀이 방법s의 index에 해당하는 char 데이터를 기준으로 앞쪽의 char 데이터들 중 자신과 같은 글자 중 가장 가까운 데이터를 return.없는 경우에는 -1을 return. 해결 코드(스포 주의)더보기// for문으로 돌면서 char와 가장 가까운 같은 글자와의 거리를 구해야 함.fun solution(s: String): IntArray { val answer = mutableListOf() s.forEachIndexed { index, char -> val compare = s.substring(0, index) val resultIndex =.. 2024. 5. 13.
[Android, 내일배움캠프] 공부일지(2024-05-12) 오늘 공부한 내용 정리(2024년 5월 12일)  1. 코드카타 문제풀이A. 두 개 뽑아서 더하기문제 내용 문제 풀이 방법numbers의 각각의 데이터 간의 합에 대한 모든 경우의 수를 리스트에 넣어서 오름차순으로 정렬 후 return 한다. 해결 코드(스포 주의)더보기// 2중 for문으로 모든 경우의 수를 계산해서 mutableList에 넣고 distinct() 하기.fun solution(numbers: IntArray): IntArray { val plusList = mutableListOf() // 바깥 for문은 기준 number와 index를 불러옴 // 안쪽 for문은 바깥의 index와 같지 않은 것들만 불러와서 더해주고 list에 넣어줌. numbers.forEac.. 2024. 5. 12.
[Android, 내일배움캠프] 공부일지(2024-05-11) 오늘 공부한 내용 정리(2024년 5월 11일)  1. 코드카타 문제풀이A. 행렬의 덧셈문제 내용 문제 풀이 방법arr1, arr2가 2차원 배열이고 각 배열의 index에 해당하는 item들의 합을 answer(2차원 배열)에 add 하기.arr1과 arr2의 행과 열이 같기 때문에 1번의 이중 for문을 이용해 합을 계산한다. 해결 코드(스포 주의)더보기fun solution(arr1: Array, arr2: Array): Array { val answer = mutableListOf() arr1.forEachIndexed { rowIndex, _ -> val addArr = mutableListOf() arr1[rowIndex].forEachIndexed { co.. 2024. 5. 11.
[Android, Kotlin] 카테고리 기능 구현 (17) 이번 포스팅에서는 마지막 기능인 카테고리 기능을 구현한 것에 대해 포스팅을 하려고 한다.꽤나 오래 걸렸는데, 내가 천천히 개발한 것도 있고 카테고리를 만들면서 다른 UI적 요소와 기능들이 추가되어야 했기 때문에 오래 걸렸던 것 같다. 바로 내가 어떻게 카테고리 기능을 구현했는지 간단하게 알아보도록 하자.간단히 알아볼 예정이라 코드에 대한 설명이 미흡할 수 있다..! 1. 카테고리 화면 생성우선은 먼저 카테고리 화면을 생성해 주었다.카테고리 화면에서는 자신이 생성한 모든 카테고리를 볼 수 있고, 카테고리를 수정하거나 삭제할 수 있도록 만들어 주었다. @Composablefun CategoryScreen(categoryViewModel: CategoryViewModel = viewModel()) { . . .. 2024. 5. 11.
[Android, 내일배움캠프] 공부일지(2024-05-10) 오늘 공부한 내용 정리(2024년 5월 10일)  1. 코드카타 문제풀이A. 문자열 내 마음대로 정렬하기문제 내용 문제 풀이 방법strings에서 각 string의 n번째 index를 기준으로 정렬한 결과를 return 한다.n번째 index가 같은 경우에는 string의 사전 순서대로 정렬한다.(사전순으로 a, b, c, d....) 해결 코드(스포 주의)더보기// strings의 n번째 index를 기준으로 오름차순으로 정렬하기.fun solution(strings: Array, n: Int): Array { // 우선 전체 문자열을 기준으로 정렬하기(n번째 index가 같은 경우를 해결하기 위함). val stringsSort = strings.sorted() // 정렬된 list를.. 2024. 5. 10.
[Android, 내일배움캠프] 공부일지(2024-05-09) 오늘 공부한 내용 정리(2024년 5월 9일)  1. 코드카타 문제풀이A. 이상한 문자 만들기문제 내용 문제 풀이 방법s를 공백을 기준으로 나눈다나눠진 s 데이터 각각의 짝수번째 index에 해당하는 문자는 대문자로, 홀수번째 index에 해당하면 소문자로 변경해 return 한다. 해결 코드(스포 주의)더보기fun solution(s: String): String { var answer = "" val splitList = s.split(" ") splitList.forEachIndexed { i, string -> string.forEachIndexed { index, char -> // 입력받을 때 소문자만 오는 게 아닌 대문자도 섞여서 올 수 있기 .. 2024. 5. 9.
[Android, 내일배움캠프] 공부일지(2024-05-08) 오늘 공부한 내용 정리(2024년 5월 8일)  1. 코드카타(프로그래머스) 문제 풀이.A. 시저 암호문제 내용 문제 풀이 방법s라는 문자열을 받아오면 각 문자들을 for문으로 받아와 n만큼 더한 값을 반환하기.공백의 경우에는 answer에 공백을 추가해 주고 continue를 돌려서 넘김.해결 코드(스포 주의)더보기fun solution(s: String, n: Int): String { var answer = "" val aInt = 97 val AInt = 65 // A = 65, a = 97 // Z = 90, z = 122 // s를 char로 나눠서 n만큼 이동된 값을 구하기. // char + n이 z값(.. 2024. 5. 8.
[Android, 내일배움캠프] 사전캠프 데일리 미션 (2) 사전캠프 2, 3, 4레벨: 용어 정리하기 IDEIDE(통합 개발 환경): 코딩, 디버그, 컴파일, 배포 등 프로그램의 개발에 필요한 모든 작업을 하나의 프로그램 안에서 처리하는 환경을 제공하는 소프트웨어.디버그: 컴퓨터 프로그램 개발 단계에서 발생하는 시스템의 논리적인 오류나 비정상 연산(버그)을 찾아내고 수정하는 과정컴파일: 주어진 language로 작성된 컴퓨터 프로그램을 다른 언어의 동등한 프로세스로 변환하는 프로세스.컨벤션convention은 관습, 대회, 조약 등의 뜻을 가지는 영단어이다.개발에서의 컨벤션은: 개발팀이 프로그램을 작성하고 유지 보수하는 데 사용하는 일련의 규칙과 가이드라인을 뜻함.자료형프로그래밍 언어에서 변수 또는 값이 가질 수 있는 데이터의 종류.변수와 상수변수는 프로그램에서.. 2024. 5. 8.
728x90