최신 글
- 회고 2024년 회고 2025년 1월이 중순이 된 지금 2024년의 회고글을 늦게나마 작성해보려고 합니다.매년 열심히 살지 않아서 연말이나 연초에 회고글을 작성안하고 넘어갔지만, 이번에는 한해의 회고를 작성하면서 작년에 무슨일이 있었고 올해는 어떤 목표나 마음가짐으로 살아갈지 중요한 밑거름이 되고자 작성해보려고 합니다. 많은 여행2023년과 더불어 2024년에도 엄청나게 많은 여행을 했다. 여행에 미친자라고 불릴정도로 많이 여행했는데2월 히로시마4월 홍콩,마카오5월 삿포로9월 나트랑10월 나고야, 시즈오카12월 카오슝작년 한해. 일본 3번 , 홍콩마카오 1번, 베트남 1번, 대만 1번 진짜 여행만 주구장창 다닌것 같다.그 덕분인지 여행짬도 차서 여행일정 준비할때 좀 더 빠르고 쉽게 준비하는것 같다.올해도 많은 지역을 여행가고..
- 알고리즘 [백준] 11048번 이동하기 N x M으로 dp로 문제 구하는 방법https://www.acmicpc.net/problem/11048fun main() = with(Scanner(System.`in`)) { val x = nextInt() val y = nextInt() val array: Array> = Array(x) { Array(y) { 0 } } val dp: Array> = Array(x) { Array(y) { 0 } } for (i in 0 until x) { for (j in 0 until y) { val value = nextInt() array[i][j] = value dp[i][j] = value } ..
- 알고리즘 [백준] 14502번 연구소 https://www.acmicpc.net/problem/14502 1. 백트래킹으로 0,1의 dfs 탐색2. 해당 그래프를 bfs로 탐색하며 2로 만들어 최대의 갯수를 구함 fun main() = with(Scanner(System.`in`)) { val n = nextInt() val m = nextInt() val graph = Array(n, { IntArray(m, { 0 }) }) val copy_graph = Array(n, { IntArray(m, { 0 }) }) val isVisited = Array(n, { Array(m, { false }) }) var ans = 0 for (i in 0 until n) { for (j in 0 un..
- 알고리즘 [백준] 16917번 양념 반 후라이드 반 https://www.acmicpc.net/problem/16917 fun main() = with(Scanner(System.`in`)) { val sauce = nextInt() val original = nextInt() val half = nextInt() val sauceCount = nextInt() val originalCount = nextInt() val needHalf = half * 2
- 알고리즘 [백준] 11651번 좌표정렬하기_2 https://www.acmicpc.net/problem/11651 fun main() = with(Scanner(System.`in`)) { val size = nextInt() val array: MutableList = mutableListOf() for (i in 0 until size) { val x = nextInt() val y = nextInt() array.add(Position(x, y)) } array.sortedWith(compareBy({ it.y }, { it.x })) .forEach { println("${it.x} ${it.y}") }}data class Position(val x: Int, val..
IT
- 안드로이드 관련 [안드로이드] 안드로이드 커스텀 달력 예제 (Android Custom CalendarView Example) 안녕하세요 YTS 입니다. 오늘은 제가 만든 Custom Calendar View에 대해 적어보려합니다. 기본적으로 Android 에서 제공하는 달력은 한계점이 많고 각 날짜에 꾸밈을 할 수없기 때문에 불편한점이 많습니다. 저의 방법은 RecyclerView를 이용하여 만든 방법입니다! 참고로 해당 방법을 이용하기위해선 RecyclerView와 RecyclerView.Adapter에 대한 사전지식이 조금 필요합니다. 1. RecyclerView에 ViewType 설정 2. StaggeredGridLayoutManager에 대한 Span 설정 ( 이 부분은 쉽습니다. ) 사전 지식을 아는 개발자라면 쉽게 따라 하실 수 있도록 가이드하겠습니다. 1. Xml에 RecyclerView를 선언한다. 저는 헤더, ..
- 안드로이드 관련 [안드로이드] 안드로이드 지문인식 변경점 안녕하세요 남갯입니다 블로그를 처음 글쓰면서 의미있는 글을 써보겠다 다짐하면서 지문인식이란 구글샘플의 fingerprintCompat으로 타겟을 변경하고 제공하는 앱을 선보였는데요? 오랜만에 앱을 개발하면서 다시 예전에 만든 소스를 검토하면서 이용하다보니 api 28에서는 fingerprint가 deprecated되고 biomatric으로 통합되었다는 정보를 알게되어 글을 쓰게 되었습니다. - fingerPrint의 변경점 Android 9 only includes fingerprint integration for BiometricPrompt. However, integrated support for other biometric modalities are forthcoming. In Android 9 a..
- 안드로이드 관련 [안드로이드] AlarmManager With Notification Example (알람매니저를 이용하여 푸쉬생성 예제) 안녕하세요 YTS 입니다. 오늘은 알람매니저(AlarmManager)를 이용하여 푸쉬(Notification)를 생성하는 예저를 다루어볼까합니다. 추가적으로 JobScheduler를 이용하여 백그라운드에서도 반응하도록 예제를 제작하였습니다. 우선적으로 사전지식이 필요한 JobScheduler는 안드로이드 API LEVEL 21부터 등장하였고, Android에서는 기존 무분별한 백그라운드 서비스를 제한하기위하여 JobScheduler로 대체를 하고있습니다. 저는 JobScheduler를 보다 쉽게 사용하기위해서 FireBase Jobdispatcher를 이용하였습니다. 보다 자세한 정보는 https://github.com/firebase/firebase-jobdispatcher-android 에서 확인할 ..
- Java [안드로이드] 지문인식(fingerprint) 사용하기 (api<23도 가능) 안녕하세요 남갯입니다. 가입하고 처음 글을쓰게 되었는데요? 예전에 지문인식을 통한 어플리케이션을 개발했었는데, 구글에서 제공하는 지문인식 샘플을 이용하여 개발하였습니다. 구글에서 제공하는 지문인식 라이브러리 https://github.com/googlesamples/android-FingerprintDialog 저는 오늘 구글에서 샘플로 제공한 지문인식 라이브러리를 통한 개발방법을 소개해드리려 합니다. 먼져 위 사이트에 접속하여 위 빨간 버튼을 이용하여 다운하고 압축을 푼후 프로젝트를 열어보도록 하겠습니다. (file - open - gradle 모양의 프로젝트) 일단 열어서 실행을 실행을 해보면 맨 왼쪽의 화면이 나오게 됩니다. 구매(purchase)나 구매 무효화 (invaldated) 버튼을 클릭하..
- 안드로이드 관련 [안드로이드] 더보기 기능(TextView ReadMore) 안녕하세요. YTS 입니다. 오늘은 TextView의 더보기 기능에 대해 적어보려합니다. 더보기 기능은 페이스북, 인스타 등 기본적으로 SNS 에서 등장하는 기능인데요. 생각보다 마땅한 라이브러리가 없어 실제로 구현해봤습니다. public static void setReadMore(final TextView view, final String text, final int maxLine) { final Context context = view.getContext(); final String expanedText = " ... 더보기"; if (view.getTag() != null && view.getTag().equals(text)) { //Tag로 전값 의 text를 비교하여똑같으면 실행하지 않음. re..