본문 바로가기

728x90
반응형

전체 글

(67)
[백준] 18352. 특정 거리의 도시 찾기 (자바 JAVA) 문제어떤 나라에는 1번부터 N번까지의 도시와 M개의 단방향 도로가 존재한다. 모든 도로의 거리는 1이다. 이 때 특정한 도시 X로부터 출발하여 도달할 수 있는 모든 도시 중에서, 최단 거리가 정확히 K인 모든 도시들의 번호를 출력하는 프로그램을 작성하시오. 또한 출발 도시 X에서 출발 도시 X로 가는 최단 거리는 항상 0이라고 가정한다. 예를 들어 N=4, K=2, X=1일 때 다음과 같이 그래프가 구성되어 있다고 가정하자. 이 때 1번 도시에서 출발하여 도달할 수 있는 도시 중에서, 최단 거리가 2인 도시는 4번 도시 뿐이다.  2번과 3번 도시의 경우, 최단 거리가 1이기 때문에 출력하지 않는다. 입력첫째 줄에 도시의 개수 N, 도로의 개수 M, 거리 정보 K, 출발 도시의 번호 X가 주어진다. (2..
[백준] 16234. 인구 이동 (자바 JAVA) 문제N×N크기의 땅이 있고, 땅은 1×1개의 칸으로 나누어져 있다. 각각의 땅에는 나라가 하나씩 존재하며, r행 c열에 있는 나라에는 A[r][c]명이 살고 있다. 인접한 나라 사이에는 국경선이 존재한다. 모든 나라는 1×1 크기이기 때문에, 모든 국경선은 정사각형 형태이다. 오늘부터 인구 이동이 시작되는 날이다. 인구 이동은 하루 동안 다음과 같이 진행되고, 더 이상 아래 방법에 의해 인구 이동이 없을 때까지 지속된다. 국경선을 공유하는 두 나라의 인구 차이가 L명 이상, R명 이하라면, 두 나라가 공유하는 국경선을 오늘 하루 동안 연다. 위의 조건에 의해 열어야하는 국경선이 모두 열렸다면, 인구 이동을 시작한다. 국경선이 열려있어 인접한 칸만을 이용해 이동할 수 있으면, 그 나라를 오늘 하루 동안은 ..
[백준] 17070. 파이프 옮기기 1 (자바 JAVA) 문제유현이가 새 집으로 이사했다. 새 집의 크기는 N×N의 격자판으로 나타낼 수 있고, 1×1크기의 정사각형 칸으로 나누어져 있다. 각각의 칸은 (r, c)로 나타낼 수 있다. 여기서 r은 행의 번호, c는 열의 번호이고, 행과 열의 번호는 1부터 시작한다. 각각의 칸은 빈 칸이거나 벽이다. 오늘은 집 수리를 위해서 파이프 하나를 옮기려고 한다. 파이프는 아래와 같은 형태이고, 2개의 연속된 칸을 차지하는 크기이다.파이프는 회전시킬 수 있으며, 아래와 같이 3가지 방향이 가능하다.파이프는 매우 무겁기 때문에, 유현이는 파이프를 밀어서 이동시키려고 한다. 벽에는 새로운 벽지를 발랐기 때문에, 파이프가 벽을 긁으면 안 된다. 즉, 파이프는 항상 빈 칸만 차지해야 한다. 파이프를 밀 수 있는 방향은 총 3가지..
[인프런 코테] 4-4 모든 아나그램 찾기 - HashMap, Sliding Window 설명S문자열에서 T문자열과 아나그램이 되는 S의 부분문자열의 개수를 구하는 프로그램을 작성하세요.아나그램 판별시 대소문자가 구분됩니다. 부분문자열은 연속된 문자열이어야 합니다. 입력첫 줄에 첫 번째 S문자열이 입력되고, 두 번째 줄에 T문자열이 입력됩니다. S문자열의 길이는 10,000을 넘지 않으며, T문자열은 S문자열보다 길이가 작거나 같습니다. 출력S단어에 T문자열과 아나그램이 되는 부분문자열의 개수를 출력합니다. 예시 입력 1bacaAacbaabc 예시 출력 13 나의 풀이강사님의 풀이는 처음에 부분 문자열의 길이 - 1개 만큼 map에 세팅해줬는데, 부분 문자열의 길이의 개수만큼 세팅하는게 좀더 자연스럽다(?)고 생각해서 그렇게 했다.import java.util.*;import java.io...
[Android] SAXParseException lineNumber: 숫자; columnNumber: 숫자 에러 해결방법 오류org.xml.sax.SAXParseException; systemId: file:/C:/Users/User/AndroidStudioProjects/android/app/src/main/res/layout/activity_main.xml; lineNumber: 1; columnNumber: 36; White space is required before the encoding pseudo attribute in the XML declaration.안드로이드 스튜디오로 개발하면서 겪은 현상이지만, 이 오류를 해결하기 위해 서치를 해보니 다양한 곳에서 발생하는 것 같았다. 다른 곳에서도 도움이 될 수도 있으니 참고하면 좋을 것이다. 원인이 오류는 에러 Exception 라인에서 유추해볼 수 있듯이, 빌드 ..
[Jetpack Compose] Scaffold와 Surface의 차이점 Scaffold와 Surface는 Jetpack Compose로 UI 레이아웃을 구성할 때 자주 사용되는 2가지 주요 구성 요소이다.Scaffold와 Surface의 기능과 예시, 그리고 차이점에 대해 정리해보려고 한다.  1. Scaffold- Scaffold는 Material Design의 기본 레이아웃 구조를 구현하는 데 사용된다.- 전체 화면의 주요 UI 컴포넌트를 배치할 수 있는 프레임워크를 제공하여 앱의 구조를 쉽게 설정할 수 있다. - 주로 앱의 메인 레이아웃을 설정할 때 사용된다.    - 예: 상단 앱바, 하단 네비게이션 바, 플로팅 액션 버튼을 포함한 화면을 구성할 때 유용하다. 특징1. 앱바: topBar 파라미터를 사용하여 화면 상단에 앱바를 배치할 수 있다. 2. 하단 바: bot..
[Jetpack Compose] LazyVerticalGrid에 대한 StickyHeader 만들기 다음의 XML 코드로 된 GridView에 대해 StickyHeader UI Effect를 만들고 싶었다.  하지만 Jetpack Compose는 StickyHeader를 LazyColumn에 대해서만 제공하고 있었고,Vertical Scroll(수직 스크롤)이 있는 Column 주변에 LazyColumnGrid를 사용하려 했더니 다음과 같은 오류가 발생했다.  it's wrong to nest two scrollable views in the same direction.  심지어 item{}에 대해 를 사용해봤지만 item{}은 GridView 내의 아이템이 될 뿐이고 하나의 행이 되지 않았다.  그래서 LazyVerticalGrid에 대해서 구현하려면 직접 확..
[Jetpack Compose] Circular Indicator 로딩뷰 만들기 개발한 앱의 로딩뷰를 직접 만들어보고 싶어서 만들어봤다.Jetpack Compose Material 3에서 제공하는 CircularProgressIndicator를 활용했다.(Jetpack Compose 1.9.3 기준)@Composablefun LoadingIndicator() { Box( modifier = YourSize, contentAlignment = YourAlignment ) { CircularProgressIndicator( modifier = YourSize, color = YourFavoriteColor, strokeWidth = YourWidth, track..

728x90
반응형