java
-
백준 7569, 2573 - JavaJava/코딩테스트 2023. 5. 26. 17:18
백준 7569 토마토 - 기존 BFS 방식에서 z축이 새로 생겼다고 보면 된다. 3차원 배열에 토마토 저장, 원래 BFS쓸 때 정의하는 x,y축 이동방향에 추가로 z축 이동방향(위 아래) 까지 정의해준다. - 남은 안익은 토마토 개수 left 정의해주기. 처음부터 left가 0일 수도 있다. bfs 들어가기전에 이거 먼저 걸러내기 - 익은 토마토 위치들부터 큐에 넣어준다. - 따로 방문배열 만들지 않고 3차원 배열에 저장된 값이 0이면 아직 안 방문한 안익은 토마토라는 뜻이므로 이때만 큐에 넣어준다. 3차원 배열에 익은 시점을 저장하며 업데이트 - 큐를 다 돌았는데도 안 익은게 남았다면 -1, 다 익었다면 3차원 배열을 탐색하여 max값 찾은 후 -1을 해서 정답 출력. (1초부터 시작했기 때문에!) i..
-
Android Studio - 지오코딩, 역지오코딩(feat.GoogleMapAPI)Android Studio 2021. 3. 15. 04:07
이번 포스팅에서는 지오코딩과 역지오코딩을 안드로이드 스튜디오에서 사용하고 서버로부터 전달받고 서버에 전달하는 방법까지 쭉 포스팅해보려 한다. 먼저 지오코딩과 역지오코딩이란? 지오코딩 : 주소 ▶ 위도,경도로 변환 역지오코딩 : 위도, 경도 ▶ 주소로 변환 내가 구현한 기능은 사용자가 자신의 현재 위치를 입력하면 그 위치를 기반으로 위도, 경도를 추출해주고(지오코딩) 그 위도, 경도로 국가정보와 도시정보를 추출해서(역지오코딩) 위도, 경도, 국가, 도시 이렇게 4가지 정보를 서버에 전달하는 기능이었다. 먼저 지오코더 선언과 초기화를 해준다. final Geocoder geocoder = new Geocoder(this.getContext()); 우선 지오코딩으로 사용자가 입력한 주소값의 위도 및 경도를 받..
-
Android Studio - BottomNavigationView위젯으로 하단 메뉴탭 만들기Android Studio 2021. 1. 28. 01:06
최근 졸업작품을 안드로이드 스튜디오 프레임워크를 사용해서 하는 중이라, 필요한 BottomNavigationView내용을 다시 공부할 겸, 나중에 이 정보가 필요한 사람들에게 도움이 되었으면 하는 바람으로 쓰는 포스팅입니다. :D 우선 안드로이드 스튜디오에서 프로젝트 생성을 해주시고, AppBarLayout을 다운로드 받아주세요. (아래 사진 참고) 그 다음 하단 메뉴바를 위한 xml파일(activity_main.xml과는 다른 별도의파일)을 만들어 작성해줍니다. 그러고 나서 따로 menu폴더를 생성하고, new resource file for menu를 통해 파일을 생성해주시면 됩니다. 코드는 이런식으로 짰는데, 각 이 메뉴 각각의 탭들에 들어갈 항목들을 의미합니다. ▶ app:showAsAction=..