본문 바로가기

분류 전체보기94

[안드로이드] ConstraintLayout 제약 & 이미지뷰 scaleType ConstraintLayout 제약(체인)걸기 같은 비율로 여러개의 뷰 체인걸기 ImageView의 scaleType속성 2022. 4. 7.
[백준] 11055번 가장 큰 증가 부분 수열 자바 문제 11055번: 가장 큰 증가 부분 수열 수열 A가 주어졌을 때, 그 수열의 증가 부분 수열 중에서 합이 가장 큰 것을 구하는 프로그램을 작성하시오. 예를 들어, 수열 A = {1, 100, 2, 50, 60, 3, 5, 6, 7, 8} 인 경우에 합이 가장 큰 증가 부분 수 www.acmicpc.net 문제 풀이 구글링했다. 역시 DP는 너무 어려워.. 어떻게 이런 방법으로 풀 생각을 하지 라고 생각했다.. 알고리즘은 반복문을 돌면서 dp배열에 현재 인덱스까지의 최대 배열 합을 갱신해나가면서 배열을 채우고 가장 큰 값을 반환하면 되는 거였다. 코드에서 의문이었던 점은 현재 i번째의 배열 값과 그 전까지의(j) 배열 값들을 확인하는 반복문에서 i까지의 값이 증가되는 것을 확인하지 않고 그 j의 값 자.. 2022. 3. 17.
[프로그래머스] 자물쇠와 열쇠 자바 문제 코딩테스트 연습 - 자물쇠와 열쇠 [[0, 0, 0], [1, 0, 0], [0, 1, 1]] [[1, 1, 1], [1, 1, 0], [1, 0, 1]] true programmers.co.kr 문제 풀이 1. 행렬 좌표값 받아 둘 Point 클래스 선언 //좌표 클래스 class Point { int r, c; public Point(int r, int c) { this.r = r; this.c = c; } } 2. key의 돌기, lock의 홈 좌표를 받아둘 두 개의 ArrayList 생성 - lockList - keyList 3. lockList : r, c가 작은 값부터 정렬 4. keyList는 각도 회전이 가능하므로 총 4가지 방법으로 정렬을 함 - r↑ c↑ - r↑ c↓ - r↓ c.. 2022. 3. 8.
[백준] 2178번 미로 탐색 자바 문제 2178번: 미로 탐색 첫째 줄에 두 정수 N, M(2 ≤ N, M ≤ 100)이 주어진다. 다음 N개의 줄에는 M개의 정수로 미로가 주어진다. 각각의 수들은 붙어서 입력으로 주어진다. www.acmicpc.net 문제 풀이 이 문제는 진짜 BFS의 정석 같다. 처음에 오른쪽 왼쪽으로 이동하는 것만 담았다가 벽에 막혀서 위나 왼쪽으로도 다시 올라갈 수 있다는 점을 깨닫고 다시 상하좌우로 dr, dc배열을 바꾼거랑 visited배열을 int가 아니라 boolean으로 처음 쓰고 바꾼 거 말고는 나름 빨리 푼 것 같다. 소스 코드 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; impo.. 2022. 3. 4.
[백준] 14719번 빗물 자바 문제 14719번: 빗물 첫 번째 줄에는 2차원 세계의 세로 길이 H과 2차원 세계의 가로 길이 W가 주어진다. (1 ≤ H, W ≤ 500) 두 번째 줄에는 블록이 쌓인 높이를 의미하는 0이상 H이하의 정수가 2차원 세계의 맨 왼쪽 위치 www.acmicpc.net 문제 풀이 ✔️ 알고리즘 1. 빗물 block[][] 배열에 받아두기 2. block배열의 맨 아래 행부터 위로 올라가면서 고인 빗물세기 3. 블록 처음 만났을 경우, 빗물이 고일 수 있으므로 start변수에 true로 설정해두기 4. start변수가 true이면서 다시 블록을 만났을 경우 end변수에 true로 설정하기 5. 그리고 다시 빈 곳을 만났을 경우 end변수 false로 바꾸기 6. 한 행의 반복이 끝났는데 end변수가 true.. 2022. 3. 4.
[Cafe In] 기록 #2: Retrofit2 Retrofit2 - REST통신 라이브러리 - AsyncTask없이 백그라운드 스레드 실행 → 콜백을 통해 메인스레드 UI에서 업데이트 - HttpUrlConnection의 반복 작업 간소화 - Annotation사용으로 코드의 가독성이 뛰어남 구성요소 - DTO (POJO) : Json타입변화에 사용 - Interface : 사용할 http CRUD메소드들을 정의해놓은 메소드 - Retrofit.Builder클래스 : baseUrl(url) / Converter 설정할 인터페이스 인스턴스 HTTP 요청 CRUD방식 HTTP요청메소드 설명 Create @POST 정보 생성, body에 전송할 데이터를 담아서 서버에 생성 Read @GET 정보 조회, url에 정보 포함해서 전달 Update @PUT 정.. 2022. 3. 2.