Kotlin
-
문제 😉 How to Solve 입력으로 들어오는 값이 스택 안에 push 되어 있어야 pop할수 있다. 입력으로 들어오는 값들을 arr 배열에 먼저 넣어놓은 뒤, 1부터 차례대로 스택에 넣으면서 만약 입력값(arr) 0번째 배열에 있는 값이 스택에 있다면 팝하고 입력배열의 0번째 값을 다음 번째 배열로 옮겨 계속 해서 비교해간다. 이때 스택에 푸쉬해줄 때 마다 result에 +를 넣어주고, while 조건을 만족한다면 result에 pop에 해당하는 -를 넣어준다. 스택의 모든 값들이 pop되었다면 result를 출력, 아닌경우 No를 출력한다. import java.io.BufferedReader import java.io.InputStreamReader import java.util.* import..
[백준 문제풀기] #1874번 - 스택 수열 with Kotlin문제 😉 How to Solve 입력으로 들어오는 값이 스택 안에 push 되어 있어야 pop할수 있다. 입력으로 들어오는 값들을 arr 배열에 먼저 넣어놓은 뒤, 1부터 차례대로 스택에 넣으면서 만약 입력값(arr) 0번째 배열에 있는 값이 스택에 있다면 팝하고 입력배열의 0번째 값을 다음 번째 배열로 옮겨 계속 해서 비교해간다. 이때 스택에 푸쉬해줄 때 마다 result에 +를 넣어주고, while 조건을 만족한다면 result에 pop에 해당하는 -를 넣어준다. 스택의 모든 값들이 pop되었다면 result를 출력, 아닌경우 No를 출력한다. import java.io.BufferedReader import java.io.InputStreamReader import java.util.* import..
2023.10.05 -
문제 💻 Code import java.io.BufferedReader import java.io.InputStreamReader import java.util.* fun main()= with(BufferedReader(InputStreamReader(System.`in`))){ val num = readLine().toInt() val answer = mutableListOf() repeat(num) { val lists = LinkedList() val str = readLine() val count = lists.listIterator(lists.size) //초기 listIterator 생성 str.forEach { if (it.isLetterOrDigit()) { //영어이거나 숫자인 경우 c..
[백준 문제풀기] #5397번 - 키로거 with Python문제 💻 Code import java.io.BufferedReader import java.io.InputStreamReader import java.util.* fun main()= with(BufferedReader(InputStreamReader(System.`in`))){ val num = readLine().toInt() val answer = mutableListOf() repeat(num) { val lists = LinkedList() val str = readLine() val count = lists.listIterator(lists.size) //초기 listIterator 생성 str.forEach { if (it.isLetterOrDigit()) { //영어이거나 숫자인 경우 c..
2023.10.04 -
아직 알고리즘 실력 멀었다.. 알맞은 방법으로 전혀 접근하지 못했다ㅠ🤦🏻♀️ 문제 🙆🏻♀️ How to solve 1차 접근 fun main() { val edit = readln().toList() var cursor = edit.size var result = edit.toMutableList() val count = readln().toInt() for (i in 1..count){ val m = readln().replace(" ", "") if(m.contains("P")){ val u = m.toList() result.add(cursor, u[1]) cursor += 1 } else if(m in "D"){ if(cursor == result.size){ continue } else{ c..
[백준 문제풀기] #1406번 - 에디터 with Kotlin아직 알고리즘 실력 멀었다.. 알맞은 방법으로 전혀 접근하지 못했다ㅠ🤦🏻♀️ 문제 🙆🏻♀️ How to solve 1차 접근 fun main() { val edit = readln().toList() var cursor = edit.size var result = edit.toMutableList() val count = readln().toInt() for (i in 1..count){ val m = readln().replace(" ", "") if(m.contains("P")){ val u = m.toList() result.add(cursor, u[1]) cursor += 1 } else if(m in "D"){ if(cursor == result.size){ continue } else{ c..
2023.10.03 -
문제 설명 준호는 요즘 디펜스 게임에 푹 빠져 있습니다. 디펜스 게임은 준호가 보유한 병사 n명으로 연속되는 적의 공격을 순서대로 막는 게임입니다. 디펜스 게임은 다음과 같은 규칙으로 진행됩니다. 준호는 처음에 병사 n명을 가지고 있습니다. 매 라운드마다 enemy[i]마리의 적이 등장합니다. 남은 병사 중 enemy[i]명 만큼 소모하여 enemy[i]마리의 적을 막을 수 있습니다. 예를 들어 남은 병사가 7명이고, 적의 수가 2마리인 경우, 현재 라운드를 막으면 7 - 2 = 5명의 병사가 남습니다. 남은 병사의 수보다 현재 라운드의 적의 수가 더 많으면 게임이 종료됩니다. 게임에는 무적권이라는 스킬이 있으며, 무적권을 사용하면 병사의 소모없이 한 라운드의 공격을 막을 수 있습니다. 무적권은 최대 k..
[프로그래머스] 디펜스 게임 with Kotlin문제 설명 준호는 요즘 디펜스 게임에 푹 빠져 있습니다. 디펜스 게임은 준호가 보유한 병사 n명으로 연속되는 적의 공격을 순서대로 막는 게임입니다. 디펜스 게임은 다음과 같은 규칙으로 진행됩니다. 준호는 처음에 병사 n명을 가지고 있습니다. 매 라운드마다 enemy[i]마리의 적이 등장합니다. 남은 병사 중 enemy[i]명 만큼 소모하여 enemy[i]마리의 적을 막을 수 있습니다. 예를 들어 남은 병사가 7명이고, 적의 수가 2마리인 경우, 현재 라운드를 막으면 7 - 2 = 5명의 병사가 남습니다. 남은 병사의 수보다 현재 라운드의 적의 수가 더 많으면 게임이 종료됩니다. 게임에는 무적권이라는 스킬이 있으며, 무적권을 사용하면 병사의 소모없이 한 라운드의 공격을 막을 수 있습니다. 무적권은 최대 k..
2023.09.15 -
🤔 SQLite? 앱의 데이터를 효율적으로 관리하기 위한 저장소 (로컬 데이터베이스) 소규모 데이터를 관리하고 사용하는데 적합한 관계형 데이터 베이스로, RDB형식(액셀 형태, 행과 열 ) 로 데이터를 저장한다. 속도가 빠르고 가볍다는 장점 이전 프로젝트에서 SQLite를 사용하여 프로젝트를 진행해왔습니다. 하지만 아래와 같은 이유로 인해 SQLite 보다 Jetpack 라이브러리에 포함된 Room을 사용을 권장하고 있습니다. 구글에서는 이러한 문제를 해결하고자 새롭게 Room Database Library를 배포하였습니다. 😮 Room? SQLite 데이터베이스를 쉽고 편리하게 사용할 수 있도록 하는 ORM 라이브러리 ORM은 또 뭐야? (Object-Relational Mapping) ORM이란, O..
[Android] Local Database(SQLite, Room)🤔 SQLite? 앱의 데이터를 효율적으로 관리하기 위한 저장소 (로컬 데이터베이스) 소규모 데이터를 관리하고 사용하는데 적합한 관계형 데이터 베이스로, RDB형식(액셀 형태, 행과 열 ) 로 데이터를 저장한다. 속도가 빠르고 가볍다는 장점 이전 프로젝트에서 SQLite를 사용하여 프로젝트를 진행해왔습니다. 하지만 아래와 같은 이유로 인해 SQLite 보다 Jetpack 라이브러리에 포함된 Room을 사용을 권장하고 있습니다. 구글에서는 이러한 문제를 해결하고자 새롭게 Room Database Library를 배포하였습니다. 😮 Room? SQLite 데이터베이스를 쉽고 편리하게 사용할 수 있도록 하는 ORM 라이브러리 ORM은 또 뭐야? (Object-Relational Mapping) ORM이란, O..
2023.09.12 -
Retrofit이란? Retrofit은 Square에서 개발한 Android, Java 및 Kotlin용 유형 안전 REST 클라이언트입니다. 라이브러리는 API를 인증 및 상호 작용하고, OkHttp를 사용하여 네트워크 요청을 보내기 위한 강력한 프레임워크를 제공합니다. 안드로이드 애플리케이션 통신 기능에 사용하는 코드를 사용하기 쉽게 만들어놓은 라이브러리로, REST 기반의 웹 서비스를 통해 JSON 구조의 데이터를 쉽게 가져오고 업로드 할 수 있습니다. -> 네트워크로부터 전달된 데이터를 필요한 형태의 객체로 받을 수 있는 라이브러리 레트로핏은 "REST API를 이용하여 JSON과 같은 데이터를 받아올 때 사용하기 좋다. "
[Android] retrofit 레트로핏이란?🔎Retrofit이란? Retrofit은 Square에서 개발한 Android, Java 및 Kotlin용 유형 안전 REST 클라이언트입니다. 라이브러리는 API를 인증 및 상호 작용하고, OkHttp를 사용하여 네트워크 요청을 보내기 위한 강력한 프레임워크를 제공합니다. 안드로이드 애플리케이션 통신 기능에 사용하는 코드를 사용하기 쉽게 만들어놓은 라이브러리로, REST 기반의 웹 서비스를 통해 JSON 구조의 데이터를 쉽게 가져오고 업로드 할 수 있습니다. -> 네트워크로부터 전달된 데이터를 필요한 형태의 객체로 받을 수 있는 라이브러리 레트로핏은 "REST API를 이용하여 JSON과 같은 데이터를 받아올 때 사용하기 좋다. "
2023.02.08