본문 바로가기

전체 글126

[2023-04-24] 14215 세 막대(Kotlin) + 2문제 문제 링크: https://www.acmicpc.net/problem/14215 14215번: 세 막대 첫째 줄에 a, b, c (1 ≤ a, b, c ≤ 100)가 주어진다. www.acmicpc.net 작성 코드입니다. // a, b, c 중 가장 큰 값을 maxLine 변수에 저장. // 나머지 두 개의 선 길이의 합은 (a + b + c) - maxLine // 해당 계산 결과를 restTwoLines 변수에 저장. // 가장 긴 선의 길이보다 나머지 두 개의 선 길이의 합이 더 커야 하므로 // 아래와 같이 while문 조건 선언 // 반복문을 돌며 가장 긴 선의 길이를 1씩 빼준다. package twentyfourthDay import java.io.* fun main(){ val br = .. 2023. 4. 24.
[2023-04-23] 10844 쉬운 계단 수 (Kotlin) 문제 링크: https://www.acmicpc.net/problem/10844 10844번: 쉬운 계단 수 첫째 줄에 정답을 1,000,000,000으로 나눈 나머지를 출력한다. www.acmicpc.net 저 스스로 풀지 못했습니다. 다른 분의 풀이를 가지고 왔습니다. import java.io.* fun main(){ val br = BufferedReader(InputStreamReader(System.`in`)) val n = br.readLine().toInt() var start = 1 for (index in 0 until n - 1){ start *= 10 } var end = 1 for (index in 0 until n){ end *= 10 } val dp = Array(n+1){ A.. 2023. 4. 23.
[Android] #9-3 레이아웃 갱신 이슈 일시적 해결(MotionLayout) 오류 상황을 찍어놓은 게 없어, 현재 영상으로 대체합니다. 동영상 플레이어 프레그먼트에서 채널을 클릭할 경우, 창이 최소화가 되며 채널 프레그먼트가 나타나야 합니다. 동영상 플레이어에서 채널을 여러 번 클릭할 경우 채널 프레그먼트의 영상이 보이지 않는 이슈가 발생했습니다. 프로그레스바가 없어진 것으로 보아 데이터는 받아와 졌지만, 리사이클러뷰 갱신이 되지 않는 것으로 보였습니다. 심각한 점은, 위의 장면에서 뒤로 가기를 누를 경우 쌓인 채널 프레그먼트가 제거되어 홈 프레그먼트가 나타나지만, 터치가 먹지 않았습니다. 로그창을 켜서 확인을 해보니, 지워졌다고 생각했던 채널 프레그먼트에서 터치 이벤트를 모두 가져가 버리는 것을 확인할 수 있었습니다. 한 번도 겪어보지 못했던 이슈이기에, 원인을 찾는데 어려움이.. 2023. 4. 23.
[2023-04-22] 1463 1로 만들기(Kotlin) + 1문제 문제 링크: https://www.acmicpc.net/problem/1463 1463번: 1로 만들기 첫째 줄에 1보다 크거나 같고, 106보다 작거나 같은 정수 N이 주어진다. www.acmicpc.net 드디어 dp 문제를 제 스스로 풀었습니다. 너무 행복합니다 ㅎㅎ. 작성 코드입니다. // 4를 1로 만드는 횟수의 최소, // 5를 1로 만드는 횟수의 최소... // 이렇게 생각을 해보니 1 부터 n까지 // 최소 횟수를 쌓아놓아야 겠다는 생각이 들었다. // dp[4] = 2, dp[5] = 3 .... // // 계산 가능한 경우의 수는 3으로 나누기, 2로 나누기, 1 빼기 이므로 // 각 연산을 진행하여 나온 수가 최솟값일 경우를 배열에 쭉 저장한다. // ex) 6 // dp[6 / 3].. 2023. 4. 23.
[2023-04-21] 1149 RGB거리 (Kotlin) + 3문제 문제 링크: https://www.acmicpc.net/problem/1149 1149번: RGB거리 첫째 줄에 집의 수 N(2 ≤ N ≤ 1,000)이 주어진다. 둘째 줄부터 N개의 줄에는 각 집을 빨강, 초록, 파랑으로 칠하는 비용이 1번 집부터 한 줄에 하나씩 주어진다. 집을 칠하는 비용은 1,000보다 작거나 www.acmicpc.net 이번에도 다른 분의 풀이를 참고했습니다. 풀이를 차근차근 읽어보며, DP 유형 문제의 접근법을 깨달을 수 있었습니다. 규칙을 찾아 점화식을 세워야 하며 배열을 생성하여 값을 누적시키는 구조로 접근을 해야 한다는 것입니다. 당연하다고 느낄 수 있지만, 저렇게 생각을 하고 접근을 하는 것과 안하는 것은 큰 차이가 있었습니다. 문제 풀이 입니다. import java... 2023. 4. 21.
[2023-04-20] 1912 연속합 (Kotlin) 문제 링크: https://www.acmicpc.net/problem/1912 1912번: 연속합 첫째 줄에 정수 n(1 ≤ n ≤ 100,000)이 주어지고 둘째 줄에는 n개의 정수로 이루어진 수열이 주어진다. 수는 -1,000보다 크거나 같고, 1,000보다 작거나 같은 정수이다. www.acmicpc.net 첫 번째 시도입니다. package nineteenthDay import java.io.* fun main(){ val br = BufferedReader(InputStreamReader(System.`in`)) val n = br.readLine().toInt() val list = br.readLine().split(' ').map{it.toInt()} val arr = Array(n){0}.. 2023. 4. 20.
[2023-04-19] 13305 주유소(Kotlin) + 6문제 DP 유형 문제들을 풀어보고 있는데, 너무 어렵네요.. 문제 링크: https://www.acmicpc.net/problem/13305 13305번: 주유소 표준 입력으로 다음 정보가 주어진다. 첫 번째 줄에는 도시의 개수를 나타내는 정수 N(2 ≤ N ≤ 100,000)이 주어진다. 다음 줄에는 인접한 두 도시를 연결하는 도로의 길이가 제일 왼쪽 도로부터 N-1 www.acmicpc.net 작성 코드 // ex) 5 2 4 1 // 이전 현재 // 반복문을 통해 하나의 요소씩 이동하며 // 만약 현재 위치의 가격이 이전 위치의 가격보다 크거나 같을 경우 이전 위치의 가격으로 계산 // 낮을 경우, 현재의 가격으로 계산 package nineteenthDay import java.io.* fun main.. 2023. 4. 19.
[2023-04-18] 1463 영화 감독 숌(Kotlin) + 1문제 문제 링크: https://www.acmicpc.net/problem/1436 1436번: 영화감독 숌 666은 종말을 나타내는 수라고 한다. 따라서, 많은 블록버스터 영화에서는 666이 들어간 제목을 많이 사용한다. 영화감독 숌은 세상의 종말 이라는 시리즈 영화의 감독이다. 조지 루카스는 스타워 www.acmicpc.net 두 문제 삽질을 하느라, 문제를 많이 풀지 못했습니다. 보통 문제를 푸는데 2시간이 넘어가면, 풀이를 보면서 공부하는 편인데, 이번에는 끝까지 풀어봐야 마음이 편안할 것 같습니다. 작성 코드입니다. // 666 -> 1666 ... 6661 -> 6662 .. // 처음엔 규칙을 찾아내려 애썼고, 포기함 // 그냥 처음 숫자인 666부터 숫자를 1씩 더해가며 // 666이 포함이 될.. 2023. 4. 18.