본문 바로가기

전체 글268

[Kotlin, S3] 백준 8911번 거북이 거북이(8911번)Silver 3#구현 #시뮬레이션 문제 내용  문제 접근처음에 거북이가 좌표 0, 0에 있을 때, 이 거북이를 명령어로 움직여서 거북이가 지나간 영역의 사각형의 넓이를 구한다.이 경우에는 거북이가 움직이고 난 좌표 x, y를 모두 구해서 최댓값과 최솟값을 차를 이용해 각 변의 길이를 구하고, x의 거리와y의 거리를 곱해주면 쉽게 구할 수 있다. 우선 명령에 따른 각도 계산 및 이동 결과를 구해야 한다. 각도의 경우는 자신이 편하게 정의하면 된다. 내 경우에는 0, 90, 180, 270으로 구현했다.'L' -> { if (currentAngle == 0) currentAngle = 270 else currentAngle -= 90}'R' -> { if (currentAn.. 2024. 8. 30.
[Android] 공부일지(2024-08-29) 오늘 공부한 내용 정리(2024년 8월 29일)  알고리즘 문제풀이올바른 배열https://rkdrkd-history.tistory.com/227 [Kotlin, S4] 백준 1337번 올바른 배열올바른 배열(1337번)Silver 4#구현 #정렬 #투 포인터 문제 내용  문제 접근문제에서 올바른 배열은 리스트의 원소 5개가 연속적인 값을 가지는 리스트를 뜻한다.정렬되지 않은 리스트가 주어질 때,rkdrkd-history.tistory.com  개인 공부부트캠프 최종 팀 프로젝트공부 내용 간단 정리최종적으로 맡을 기능들을 정하고 개발을 시작했다.내 경우에는 타이머가 작동 중일 때, 실행할 수 있는 앱들을 불러와서 각각의 앱의 시간만큼 앱을 사용할 수 있게 해주는 기능을 맡았다.현재 타이머가 작동 중일 때.. 2024. 8. 29.
[Kotlin, S4] 백준 1337번 올바른 배열 올바른 배열(1337번)Silver 4#구현 #정렬 #투 포인터 문제 내용  문제 접근문제에서 올바른 배열은 리스트의 원소 5개가 연속적인 값을 가지는 리스트를 뜻한다.정렬되지 않은 리스트가 주어질 때, 리스트를 정렬하고 나서 올바른 배열을 만들기 위해서는 몇 개의 원소를 추가해야 하는지 최소 개수를 출력한다.입력 예제 1을 예로 들어 보면3567리스트 5, 6, 7이 원소로 존재하는데, 5, 6, 7은 이미 연속된 수이기 때문에 2개만 있으면 올바른 배열을 만들 수 있다.3, 4 또는 7, 8이 있으면 된다. 리스트의 원소 하나하나를 연속된 원소의 첫 원소라고 가정하고 올바른 배열을 만들기 위해 추가해야 할 원소의 개수는 최소 0개에서 최대 4개가 된다.이미 올바른 배열인 경우에는 0개일 것이고, 연속.. 2024. 8. 29.
[Android] 공부일지(2024-08-28) 오늘 공부한 내용 정리(2024년 8월 28일)  코드카타 문제풀이유니대전 퀴즈쇼https://rkdrkd-history.tistory.com/224 [Kotlin, B1] 백준 20632번 유니대전 퀴즈쇼유니대전 퀴즈쇼(20632번)Bronze 1#구현 #문자열https://www.acmicpc.net/problem/20362 문제 내용  문제 접근정답자의 채팅이 올라오고 그 이전에 정답자와 같은 채팅을 친 사람들이 몇 명인지 구해야 한다.rkdrkd-history.tistory.com  면접 이론 학습 12일 차면접 이론 학습 12일 차객체 지향에서 상속이란 무엇인가, 예를 들어서 설명하기.상속(Inheritance)은 부모(super) class의 기능을 재사용(reuse)하고 기능을 확장(expa.. 2024. 8. 28.
[Android] custom NumberPicker를 string array와 함께 사용하기 내일배움캠프 최종 프로젝트 기록 3  서론어제까지는 BottomSheet의 height를 설정하기 위해 삽질한 것을 포스팅했는데,오늘은 Bottom Sheet에 NumberPicker를 써서 구현한 것을 포스팅해보려 한다.추가적으로 NumberPicker에 string.xml에서 정의한 string array도 함께 사용했다.  NumberPicker 구현우선은 NumberPicker에 사용할 전용 Theme를 만들어 보겠다.NumberPicker에서는 Picker의 text의 색과 size 등등 몇 개의 설정이 불가하기 때문에, Theme로 구현해 줘야 한다.textColor와 size 설정은 1, 2번째 줄에서 이루어지고, colorControlNormal은 NumberPicker에서 선택된 항목과 .. 2024. 8. 28.
[Kotlin, B1] 백준 20632번 유니대전 퀴즈쇼 유니대전 퀴즈쇼(20632번)Bronze 1#구현 #문자열https://www.acmicpc.net/problem/20362 문제 내용  문제 접근정답자의 채팅이 올라오고 그 이전에 정답자와 같은 채팅을 친 사람들이 몇 명인지 구해야 한다.입력은 시간 순서대로 주어지고 정답자가 입력되고 나서 이전에 채팅을 친 사람들 중 정답자와 같은 채팅을 친 사람을 구해야 한다.그러면 입력을 받을 때 정답자가 입력되면 정답자가 몇 번째 채팅에서 입력되었는지, 정답은 무엇인지 확인을 해줘야 한다. 그리고 입력받은 채팅들과 사용자 이름을 모두 List로 2차원 List에 저장해 준다.2차원 List를 거꾸로 돌게 되면 반복의 마지막이 가장 먼저 입력된 값이 되고 가장 빨리 올라온 채팅이 되기 때문에 정답자 이전에 정답을 .. 2024. 8. 28.
[Android] 공부일지(2024-08-27) 오늘 공부한 내용 정리(2024년 8월 27일)  코드카타 문제풀이주유소(Silver 3, 13305번)https://rkdrkd-history.tistory.com/221 [Kotlin, S3] 백준 13305번 주유소주유소(13305번)Silver 3#그리디 알고리즘https://www.acmicpc.net/problem/13305 문제 내용  문제 접근이 사진에서 원 안의 수가 1L당 기름의 값이고 원 사이의 연결된 선이 도시 간 도로의 길이일 때, 적은rkdrkd-history.tistory.com  면접 이론 학습 11일 차면접 이론 학습 11일 차객체 지향이 무엇인지 설명하고 SOLID 원칙에 대해 설명하기.객체 지향 프로그래밍(Ojbect - Oriented Programming, OOP)은.. 2024. 8. 27.
[Android] Android에서 BottomSheetDialogFragment의 높이를 최대 높이로 설정하기 내일배움캠프 최종 프로젝트 기록 2  서론이번에는 UI 개발을 할 차례이다.나는 UI개발에서 마이페이지에 사용하는 bottomSheet들의 UI 구성을 맡았다.그리고 이미 구현되어 있는 bottomSheet 틀을 사용해서 구현할 것이다.sheet 틀은 xml로 이미 구현되어 있고, content 부분만 따로 xml로 구현해서 붙여주는 작업을 진행했다.bottomSheet UI의 height 설정 부분에서 삽질을 했던 과정을 글로 적어 보겠다.  BottomSheet를 최대 높이로 설정해서 만들기기존에는 BottomSheet를 최대 높이로 설정해서 띄우려면 BottomSheetBehavior를 사용해야 했다.원래 BottomSheetBehavior를 사용해도 되지만, bottomSheetDialogFrag.. 2024. 8. 27.
[Kotlin, S3] 백준 13305번 주유소 주유소(13305번)Silver 3#그리디 알고리즘https://www.acmicpc.net/problem/13305 문제 내용  문제 접근이 사진에서 원 안의 수가 1L당 기름의 값이고 원 사이의 연결된 선이 도시 간 도로의 길이일 때, 적은 기름값으로 첫 번째 도시에서 마지막 도시까지 이동할 수 있는 경우를 구해야 한다.위 예제에서는 5원짜리 2L를 첫 번째 도시에서 구매해 주고, 2원짜리 4L를 두 번째 도시에서 구한다. 4L로 2, 3번째 도로를 지날 수 있다. 그래서 정답은 18이다. 가장 적은 기름값이 들어야 하기 때문에 기름값이 이동하면서 증가하면 안 된다.세 번째 경우에는 원래는 1L당 4원이 필요하지만 이전 도시의 2원이 더 저렴하기 때문에 2원만 쓰고도 3번째 도로를 이용할 수 있다.다.. 2024. 8. 27.
[Android] 공부일지(2024-08-26) 오늘 공부한 내용 정리(2024년 8월 26일)  알고리즘 문제풀이연속합(Silver 2, 1912번)https://rkdrkd-history.tistory.com/219 [Kotlin, S2] 백준 1912번 연속합연속합(1912번)Silver 2#다이나믹 프로그래밍https://www.acmicpc.net/problem/1912 문제 내용  문제 접근정수들이 주어지면, 연속된 정수의 합 중의 최댓값을 찾아서 출력한다.시간제한이 1초이고, 정수는 1rkdrkd-history.tistory.com  부트캠프 최종 팀 프로젝트최종 팀 프로젝트 초기 세팅공부 내용 간단 정리https://rkdrkd-history.tistory.com/218 [Android] Android의 Gitignore 설정으로 com.. 2024. 8. 26.
[Kotlin, S2] 백준 1912번 연속합 연속합(1912번)Silver 2#다이나믹 프로그래밍https://www.acmicpc.net/problem/1912 문제 내용  문제 접근정수들이 주어지면, 연속된 정수의 합 중의 최댓값을 찾아서 출력한다.시간제한이 1초이고, 정수는 10만 개까지 들어오기 때문에 다이나믹 프로그래밍이 강제된다.이 문제를 다이나믹 프로그래밍으로 풀기 위해서는 어떻게 해야 할까? 입력 예제 1을 예로 들어 보겠다.1010 -4 3 1 5 6 -35 12 21 -1정수를 하나씩 보면서 최댓값을 찾아보자. 첫 번째 수는 10이기 때문에 연속된 수의 합은 10이다.두 번째 수는 -4이다. 연속된 수의 합은 6이다. 6과 -4중에 6이 더 크다.세 번째 수는 3이다. 연속된 수의 합은 9이다. 9와 3중에 9가 더 크다.네 번째.. 2024. 8. 26.
[Android] Android의 Gitignore 설정으로 commit 제한하기 내일배움캠프 최종 프로젝트 기록 1  서론이제 기획이 어느 정도 마무리되고 본격적으로 개발을 시작한다.프로젝트의 주제는 cosmic detox로, 우주를 콘셉트로 하는 디지털 디톡스 앱을 만들기로 했다.그전에 먼저 초기 세팅을 진행하고 있다. 내가 맡은 초기 세팅은 패키지 구성 및 gitignore 설정, firebase와의 연결이다.그중에서 gitignore 설정 관련해서 포스팅을 남겨 보려 한다.이 포스팅에는 gitignore 설정 및 적용 방법을 적어 보겠다.  Gitignore.gitignore 파일은 commit 되는 모든 파일들 중에 특정한 파일들을 commit에서 제외시켜 버리는 역할을 하는 파일이다.gitignore 파일을 이용해 프로젝트에서 안 쓰이는 파일들을 제외시켜서 버전 관리를 용이.. 2024. 8. 26.
[Kotlin, S2] 백준 2716번 원숭이 매달기 원숭이 매달기(2716번)Silver 2#자료 구조 #트리 #스택 문제 내용  문제 접근입력은 오직 대괄호만 주어진다. 대괄호가 있으면 덩굴이 2개로 분리되는 것이다.각 덩굴에는 동일한 수의 원숭이가 있어야 한다.덩굴은 2개로만 나누어질 수 있다.위 문제의 그림을 보면 각 덩굴 수에 맞는 원숭이들이 매달려 있다. 첫 번째 덩굴의 원숭이 수는 각 덩굴에 4마리씩이다(2+ 2, 1 + 1 + 2).오른쪽의 덩굴의 원숭이 수는 각 덩굴에 2마리씩이다(1 + 1, 2).각 덩굴의 depth가 깊어질수록 필요한 원숭이의 수가 2배씩 늘어나게 된다. 덩굴은 무조건 2개씩으로만 나누어지기 때문에 한 덩굴의 depth가 깊어질수록 다른 덩굴도 깊어진 덩굴의 depth에 따라 늘어난 원숭이 수에 맞게 원숭이를 추가해 줘.. 2024. 8. 25.
[Android] 공부일지(2024-08-23) 오늘 공부한 내용 정리(2024년 8월 23일)  코드카타 문제풀이회문인 수(Silver 5, 11068번)https://rkdrkd-history.tistory.com/214 [Kotlin, S5] 백준 11068번 회문인 수회문인 수(11068번)Silver 5#수학 #브루트포스 알고리즘https://www.acmicpc.net/problem/11068 문제 내용  문제 접근10진수인 숫자를 입력받을 때, 2진법부터 64진법까지 수를 변환할 때, 변환한 수가 팰린드rkdrkd-history.tistory.com  CPU(Silver 5, 16506번)https://rkdrkd-history.tistory.com/215 [Kotlin] 백준 16506번 CPUCPU(16506번)Silver 5#구현 문.. 2024. 8. 23.
[Kotlin] 백준 16506번 CPU CPU(16506번)Silver 5#구현 문제 내용  문제 접근위 표를 참고해서 opcode, rD, rA, rB(#C)가 주어질 때, 문제에 정의된 번역 방법으로 어셈블리어를 번역해서 기계어로 출력한다.각 문제에 필요한 조건들이 뭐가 있는지 정리해 보겠다. 기계어는 총 16개의 0과 1로 이루어져 있다.16개의 수들이 적용되는 조건은 다음과 같다. 1. 0~3번째까지의 수는 opcode에 맞게 구성해 주면 된다. 위 표 참고.2. 4번째 수는 opcode가 C로 끝나면 1, 아니면 03. 5번째 수는 0 고정.4. 6~8번째 수는 rD의 2진수값.5. 9~11번째 수는 rA의 2진수값, NOT의 경우는 0 고정.6.12~15번째 수는 opcode가 C로 끝날 때는 #C의 2진수값, 아니면 rB의 2진수.. 2024. 8. 23.
728x90