2024/07 37

49일차)알고리즘 문제, 숙련 1주차 강의(프레그먼트)

>알고리즘 문제1.문제문제 설명비내림차순으로 정렬된 수열이 주어질 때, 다음 조건을 만족하는 부분 수열을 찾으려고 합니다.기존 수열에서 임의의 두 인덱스의 원소와 그 사이의 원소를 모두 포함하는 부분 수열이어야 합니다.부분 수열의 합은 k입니다.합이 k인 부분 수열이 여러 개인 경우 길이가 짧은 수열을 찾습니다.길이가 짧은 수열이 여러 개인 경우 앞쪽(시작 인덱스가 작은)에 나오는 수열을 찾습니다.수열을 나타내는 정수 배열 sequence와 부분 수열의 합을 나타내는 정수 k가 매개변수로 주어질 때, 위 조건을 만족하는 부분 수열의 시작 인덱스와 마지막 인덱스를 배열에 담아 return 하는 solution 함수를 완성해주세요. 이때 수열의 인덱스는 0부터 시작합니다.제한사항5 ≤ sequence의 길이..

48일차)알고리즘 문제(삼각 달팽이, 블록 게임), 숙련 1주차 강의(뷰바인딩, 어댑터뷰)

>알고리즘 문제 1. 삼각 달팽이1)문제정수 n이 매개변수로 주어집니다. 다음 그림과 같이 밑변의 길이와 높이가 n인 삼각형에서 맨 위 꼭짓점부터 반시계 방향으로 달팽이 채우기를 진행한 후, 첫 행부터 마지막 행까지 모두 순서대로 합친 새로운 배열을 return 하도록 solution 함수를 완성해주세요.제한사항n은 1 이상 1,000 이하입니다.2)솔루션class Solution { lateinit var arr:Array fun solution(n: Int): IntArray { arr=Array(n){IntArray(n)} var top=0 var bot=n-1 val left=IntArray(n..

47일차)알고리즘 문제(큰 수 만들기), 챌린지반 3주차 강의(디자인 패턴, MVVM), 챌린지반 과제

>알고리즘 문제1. 큰 수 만들기1)문제어떤 숫자에서 k개의 수를 제거했을 때 얻을 수 있는 가장 큰 숫자를 구하려 합니다.예를 들어, 숫자 1924에서 수 두 개를 제거하면 [19, 12, 14, 92, 94, 24] 를 만들 수 있습니다. 이 중 가장 큰 숫자는 94 입니다.문자열 형식으로 숫자 number와 제거할 수의 개수 k가 solution 함수의 매개변수로 주어집니다. number에서 k 개의 수를 제거했을 때 만들 수 있는 수 중 가장 큰 숫자를 문자열 형태로 return 하도록 solution 함수를 완성하세요.제한 조건number는 2자리 이상, 1,000,000자리 이하인 숫자입니다.k는 1 이상 number의 자릿수 미만인 자연수입니다.2)솔루션import java.util.*cla..

챌린지반 3주차 첫번째 과제: 디자인 패턴 구현

과제 링크:https://teamsparta.notion.site/3-dc9daa742d604be4b7f795b458b1b6af 3주차 과제 | Notion과제teamsparta.notion.site 1. Singletonobject Logger{ fun log(message:String){ println(message) }}-object키워드를 이용해 콘솔창에 메시지를 출력하는 싱글톤 클래스를 만들음 2. Strategyinterface TextAlignmentStrategy{ fun alignment(str:String,int:Int):String}class LeftAligment:TextAlignmentStrategy{ override fun alignment(st..

46일차)알고리즘 문제(경사로의 개수, 택배 상자), 팀프로젝트 마무리 및 발표, 비행기 전광판 과제

>알고리즘 문제 1. 경사로의 개수 1)문제현대모비스에서 전기차로 경사로 주행 테스트를 하려고 합니다. 경사로 테스트는 n×m 크기의 격자 형태의 공간에서 진행되며, 각 칸에 적힌 숫자는 높이를 나타냅니다. 전기차는 격자 내의 모든 칸에서 출발 가능하며, 상하좌우로 인접한 칸으로만 이동 가능하고 격자 밖을 벗어날 수는 없습니다. 전기차가 인접한 칸으로 이동하는 길의 경사는 이동하려는 칸의 높이에서 현재 칸의 높이를 뺀 값입니다. 예를 들어 높이가 5인 칸에서 7인 칸으로 이동하는 길의 경사는 2(= 7 - 5)이고, 높이가 6인 칸에서 높이가 1인 칸으로 이동하는 길의 경사는 -5(= 1 - 6)입니다. 경사 수열 d가 주어집니다. 경사 수열은 테스트에서 전기차가 이동할 길의 경사를 나타내며, d[i]는..

최종 완성

1. 깃 허브 링크https://github.com/ImGaram/harmony_cafe GitHub - ImGaram/harmony_cafe: 조화로운 조(6조) 팀 프로젝트 하모니 카페조화로운 조(6조) 팀 프로젝트 하모니 카페. Contribute to ImGaram/harmony_cafe development by creating an account on GitHub.github.com 2. 완성본 화면 https://www.notion.so/teamsparta/7ff95d4eac2e4212b4ffc9a2ee4b6b0f 발표 자료 사진 모음 | Notion캡처teamsparta.notion.site 3. 발표 피드백:시연 영상에 부가 설명 필요. 로그인 기능이 필요한 이유를 만들어야 함 4. 느낀..

45일차)알고리즘 문제(동굴 탐험)

>알고리즘 문제1. 문제문제 설명오지 탐험가인 프로도는 탐험 도중 n개의 방으로 이루어진 지하 동굴을 탐험하게 되었습니다. 모든 방에는 0부터 n - 1 까지 번호가 붙어있고, 이 동굴에 들어갈 수 있는 유일한 입구는 0번 방과 연결되어 있습니다. 각 방들은 양방향으로 통행이 가능한 통로로 서로 연결되어 있는데, 서로 다른 두 방을 직접 연결하는 통로는 오직 하나입니다. 임의의 서로 다른 두 방 사이의 최단경로는 딱 한 가지만 있으며, 또한 임의의 두 방 사이에 이동이 불가능한 경우는 없습니다.탐험에 앞서 이 지하 동굴의 지도를 손에 넣은 프로도는 다음과 같이 탐험 계획을 세웠습니다.모든 방을 적어도 한 번은 방문해야 합니다.특정 방은 방문하기 전에 반드시 먼저 방문할 방이 정해져 있습니다.2-1. 이는..

44일차)알고리즘 문제(소수 찾기, 쿼드 압축 후 개수 세기)

>알고리즘 문제1. 소수 찾기1)문제문제 설명한자리 숫자가 적힌 종이 조각이 흩어져있습니다. 흩어진 종이 조각을 붙여 소수를 몇 개 만들 수 있는지 알아내려 합니다.각 종이 조각에 적힌 숫자가 적힌 문자열 numbers가 주어졌을 때, 종이 조각으로 만들 수 있는 소수가 몇 개인지 return 하도록 solution 함수를 완성해주세요.제한사항numbers는 길이 1 이상 7 이하인 문자열입니다.numbers는 0~9까지 숫자만으로 이루어져 있습니다."013"은 0, 1, 3 숫자가 적힌 종이 조각이 흩어져있다는 의미입니다.2)솔루션class Solution { fun solution(numbers: String): Int { var answer = 0 //n..

43일차)알고리즘 문제(가장 큰 수), 피그마 강의, 팀프로젝트

>알고리즘 문제1. 가장 큰 수1)문제0 또는 양의 정수가 주어졌을 때, 정수를 이어 붙여 만들 수 있는 가장 큰 수를 알아내 주세요.예를 들어, 주어진 정수가 [6, 10, 2]라면 [6102, 6210, 1062, 1026, 2610, 2106]를 만들 수 있고, 이중 가장 큰 수는 6210입니다.0 또는 양의 정수가 담긴 배열 numbers가 매개변수로 주어질 때, 순서를 재배치하여 만들 수 있는 가장 큰 수를 문자열로 바꾸어 return 하도록 solution 함수를 작성해주세요.제한 사항numbers의 길이는 1 이상 100,000 이하입니다.numbers의 원소는 0 이상 1,000 이하입니다.정답이 너무 클 수 있으니 문자열로 바꾸어 return 합니다.2)솔루션class Solution {..

발표자료 작성

팀원이 제작한 pdf파일에 맞춰 상세내용 취합후 대본을 적었다. -상세 내용로그인 화면User: 회원가입한 유저 정보를 키는 아이디, 값은 User클래스 인스턴스로 해서 해시맵 저장한다. 또한 User클래스는 Parcelable을 상속받아 intent를 통해 액티비티간에 주고받을 수 있게 하였다.android:configChanges: AdroidManifest에서 android:configChanges속성값을 추가해 화면 방향 전환시 재시작되어 회원가입정보가 날아가는것을 방지하였다.registerForActivityResult: 회원가입화면으로 넘어갈시 다시 돌아올때 회원가입한 유저 정보를 받아와 해시맵에 저장하도록 하였다.회원가입 화면toolbar: 툴바를 이용하여 상단 타이틀과 뒤로가기 버튼을 구현..