본문 바로가기

전체 글

(207)
[임베디드] 5. 네트워크 보호되어 있는 글입니다.
[Kotlin] Log 사용하기 로그를 사용해 볼 것이다. Log.d 파라미터로 tag, msg를 받는다. tag는 많은 앱들의 로그 중에서 어떤 로그인지 식별하기 위한 용도 msg는 실제 로그에 띄울 메시지 위와 같이 Log.d를 작성해 주고 에뮬레이터를 실행해 보자. 하단의 Logcat을 눌러서 로그를 확인해 보자. 벌써부터 수많은 로그가 날 반긴다. 이래서 tag를 사용해야 한다. 위 검색 창에 tag:TAG로 tag검색을 해주면, tag가 TAG인 모든 로그가 나온다. 마지막 로그는 Log.d로 찍은 로그임을 확인할 수 있다. 코드를 조금 변경해서 버튼을 누르면 로그를 수집하도록 작성하였다. TAG를 상수로 선언하고 사용하는 것은 하나의 꿀팁 버튼을 누르니 잘 작동한다. Reference 강의
[주간일기챌린지] 24.2.26 ~ 24.3.3 인사동(greeting town)에 왔다. 인사동답게 한글간판이다. 점심을 먹기 위해 골목으로 들어왔다. 플러스84 쌀국수 비빔쌀국수와 그냥 쌀국수. 뭔가 맛이 독특하다. 안녕인사동에 왔다. 인생네컷이 스튜디오 수준이다. 사진 종류도 다양하다. 감히 인생네컷계의 GOAT라고 할 수 있다. 포토이즘박스 꽤나 다양한 걸 파는 문구점 추억의 불량식품부터 최신유행 나이프까지 다 있다. 쌈짓길 쌈짓길 내부 통로가 좁다. 스타벅스 또 대흥민이야 아니 이건 뭐야 골목길 굉장히 한국적이다. 낙원동으로 왔다. 낙원악기상가는 무서워서 못 들어갔다. 헉 이번엔 익선동 익선동 낙원장 빵이 다양하다. 소금빵과 바나나파운드케이크, 카라멜 아인슈페너 바나나파운드케이크는 바나나맛이 나서 맛이 없었다. 자연도 소금빵 성수동에선 웨이팅..
[졸업프로젝트] SDN과 SFC의 차이 보호되어 있는 글입니다.
[졸업프로젝트] SFC 구현해보기 - 1 보호되어 있는 글입니다.
[Android Studio] 간단한 Project 만들기 버튼을 누르면 text가 바뀌는 간단한 Project를 만들어 볼 것이다. 과정 New -> Project -> Empty Activity 주의: Package name은 중복되거나 example이 들어가서는 안된다. xml파일부터 확인. Attributes를 클릭해서 속성창 확인 xml파일이 HTML이고, 코틀린이 JS라고 생각하면 될 거 같다. 버튼을 눌러서 하단에 배치 button에 constraint를 설정. constraint는 어딘가에 붙일 수 있는 용수철이라고 보면 된다. 좌우로 연결했기 때문에 중앙으로 정렬이 되었고, 상단의 Hello world와도 연결했지만 20dp만큼 거리를 줬기 때문에 조금 떨어진 것을 볼 수 있다. 이미 중앙 정렬된 속성이 있으면 Constraint를 그냥 해당 속..
[위클리 백준] 2024 5회 (2) - 18311 https://www.acmicpc.net/problem/18311 구현 문제 문제 설명 각 트랙의 길이를 배열에 저장하고, 배열을 순회하며 직접 달리는 것처럼 구현하면 됩니다. 또한 다시 돌아오는 것까지 생각해야 하므로 배열을 거꾸로 순회하는 과정도 추가해야 합니다. 현재 남은거리 K가 현재 트랙의 길이보다 짧으면 현재 트랙을 달리다가 멈추게 될 것이므로 현재 트랙 번호를 출력하고, 그렇지 않다면 남은 거리 K에서 트랙의 길이만큼 빼주면 됩니다. 주의할 점은 K의 범위가 나와 있지 않다는 점인데, 각 코스의 길이가 50,000이고 코스가 100,000개, 코스를 왕복해야 하므로 K의 범위는 [1, 10,000,000,000]입니다. 64비트 정수형으로 선언해야 합니다. 소스 코드 / Rust use s..
[위클리 백준] 2024 5회 (1) - 2476 https://www.acmicpc.net/problem/2476 문제 설명 분기문을 사용해서 문제에서 나온대로 작성하면 되는 문제입니다. 소스 코드 / Rust use std::io; fn get_max(a : i32, b : i32) -> i32 { if a > b { return a; } return b; } fn solve(input_string : &str) -> i32 { let toks = input_string.split_whitespace(); let mut vc : Vec = Vec::new(); for m in toks { vc.push(m.parse().unwrap()); } vc.sort(); if vc[0] == vc[1] && vc[1] == vc[2] { return 1000..