no image
자바 [Algorithm] 누적합 - 백준 3020 개똥벌레
1. 문제  2. 접근법1. 홀수번째는 석순, 짝수번째는 종유석이 입력된다.2. 석순과 종유석 배열에 대한 누적합을 계산하여 높이 i번째까지 석순과 종유석의 개수를 저장한다.3. 부딪히는 장애물 수를 계산한다.int[] arr = new int[H+1];for (int i = 1; i 4. 최소 높이의 개수를 계산한다. 3. 코드package week08;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.StringTokenizer;public class Baek3020 { public static void main(String[] args) throws IO..
2024.05.30
no image
자바 [Algorithm] 슬라이딩 윈도우 - 백준 11465 소가 길을 건너간 이유 5
1. 문제 2. 접근법처음엔 누적합 방식으로 접근하려고 했지만 감이 안잡혀 가장 생각나는 슬라이딩 윈도우 방식을 사용했다. [슬라이딩 윈도우를 사용하여 최소 고장난 신호등 개수 계산] for 루프를 사용하여 구간을 오른쪽으로 한 칸씩 이동하면서 각 구간의 고장난 신호등 수를 계산새로운 요소를 더하고, 이전 요소를 뺀다현재 구간의 고장난 신호등 수를 min_count와 비교하여 최소값을 갱신 3. 코드package week08;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.StringTokenizer;public class Baek14465 { public ..
2024.05.29
no image
자바 [Algorithm] 누적합 - 백준 11659 구간 합 구하기 4
1. 문제  2. 접근법입력1번째 줄 : N, M2번째 줄 : N+1 크기의 배열 값3번째 줄 이후 : 1~3구간의 합, 2~4구간의 합, 5~5 구간의 합 누적합 알고리즘은 누적 합 배열을 만들고 원하는 구간의 값을 출력하는 것이 편하다. [기본 배열]012345054321 [누적 합 배열]012345059121415 1~3구간의 합은5 + 4 + 3 = 12이다.출력하기 위해서는 누적합 배열에서 [3] - [1-1] = 12 값을 출력 2~4 구간의 합은 4 + 3 + 2 = 9이다.출력하기 위해서는 누적합 배열에서 [4] - [2-1]  = 14 - 5 = 9  따라서 i, j로 취급하여누적합배열[i] - 누적합배열[j-1]을 하면 원하는 값이 나온다. 3. 코드package week08;impor..
2024.05.27
no image
자바 [Algorithm] 투포인터 - 백준 2003 수들의 합 2
1. 문제 2. 접근법배열 구간에서 특정 값이 나올 경우의 수를 구하는 문제이므로 투포인터 문제이다.A 배열에 1 1 1 1값들을 저장한 후Start_Pointer와 End_Pointer를 만들고 1. 현재 값이 M 값보다 같거나 클 경우 Start_Pointer를 뺀 후 증가시킨다.2. End_Pointer가 배열의 끝에 도달할 경우 종료3. 현재 값이 M 값보다 작거나 같을 경우 End_Pointer를 더한 후 증가 시킨다.4. 현재 값이 M 값과 같을 경우 count ++를 해준다.    3. 코드package week08;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import ja..
2024.05.27
no image
자바 [Algorithm] 누적합 - 백준 2167 2차원 배열의 합
1. 문제 2. 접근법1. 배열을 [n+1][m+1] 만큼 선언해준다.2. 배열에 값을 채운다.3. K개 값을 받는다.4. x1,y2 ~ x2,y2의 값을 구한다. 01231124281632 ex] (1,1) 부터 (2,3)까지 합을 구한다.for(int i = x1; i 3. 코드package week08;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.StringTokenizer;public class Baek2167 { public static void main(String[] args) throws IOException { Buffered..
2024.05.24
no image
자바 [Algorithm] 누적합 - 백준 2851 슈퍼 마리오
1. 문제2. 접근법마리오는 받은 점수의 합을 최대한 100에 가깝게 만든다고 한다.하지만 100에 가까운 수가 2개라면 ex) 98, 102 마리오는 큰 값을 선택한다. 1. 반복문으로 1~10까지 sum에 점수를 더한다.2. if(sum > 100)이 되면3. 100 - (sum - mario[i]) 3. 코드package week08;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;public class Baek2851 { public static void main(String[] args) throws IOException { BufferedReader buffered..
2024.05.24
no image
자바 [Algorithm] DP - 백준 11058 크리보드
1. 문제  2. 접근법알고리즘 순서1. N 값 받기2. 크리보드의 4가지 역할을 사용하여 1...n번 눌렀을 때 dp배열에 최대 값을 저장3. dp[N] 값 출력 경우의 수 확인N = 1A (1) N = 2AA (2) N = 3AAA (3) N = 4AAAA (4) N = 5AAAAA (5) N = 6AA(전체선택)(복사)(붙여넣기)(붙여넣기) : AAAAAA (6)AAA(전체선택)(복사)(붙여넣기) : AAAAAA (6)AAAAAA (6) N = 7A (전체선택)(복사)(붙)(붙)(붙)(붙) : AAAAA (5)AA (전체선택)(복사)(붙)(붙)(붙) : AAAAAAAA (8)AAA (전체선택)(복사)(붙)(붙) : AAAAAAAAA(9)AAAA (전체선택)(복사)(붙여넣기) : AAAAAAAAA(8..
2024.05.22
no image
[Android Studio] 패키지 구성 확인하기
AndroidManifest.xml icon : 기본 아이콘 설정 label : 빌드 진행할 때 사용되는 이름 (원하는 이름으로 빌드를 하면 핸드폰에서 설정한 이름으로 빌드 가능) roundIcon : 아이콘 테두리를 둥글게 해줌 theme : 심볼 색 res 내부 파일 drawable : 이미지 및 그래픽 리소스를 포함한다. 앱에서 사용되는 이미지 파일들이 저장된다. layout : 엑티비티와 연결하는 레이아웃 파일을 모아 놓는 곳이다. 화면의 디자인 및 배치를 정의한다. mipmap : 다양한 해상도의 앱 아이콘 이미지를 포함한다. 각각의 mipmap 디렉터리에는 다른 해상도의 이미지 파일들이 저장된다. values : 문자열, 색상, 스타일, 차원 등과 같은 값들을 정의하는 리소스 파일들이 포함된다.
2024.04.12
no image
[Android Studio] 뷰와 뷰의 속성
뷰의 속성 뷰(View)는 화면에 들어가는 각각의 요소를 말하며 일반적으로 컨트롤이나 위젯이라고 불린다. 즉, 사용자의 눈에 보이는 화면의 구성 요소들이 바로 뷰이다. 이러한 뷰를 여러개 포함하고 있는 것을 뷰 그룹(ViewGroup)이라고 하며, 이 뷰 그룹 안에서 뷰의 위치를 지정할 수 있다. 뷰 그룹은 여러개의 뷰를 담고 있는 그릇과 같아서 뷰와는 약간 다르지만 뷰 그룹 안에는 뷰 뿐만 아니라 또 다른 뷰 그룹도 넣을 수 있다. 이것은 뷰그룹이 뷰를 상속하여 만들어졌기 때문이다. 여러개의 뷰를 담고 있는 뷰그룹 역시 하나의 뷰라고 했을 때 또 다른 뷰그룹이 이 뷰그룹을 뷰처럼 다룰 수 있다. 이러한 뷰와 뷰그룹의 관계는 여러 가지 디자인 패턴 중에 컴포지트 패턴(Composite Pattern)을 ..
2024.04.12