본문 바로가기

♞ | 공부일지/♝ | TIL90

[Android, 내일배움캠프] 공부일지(2024-07-12) 오늘 공부한 내용 정리(2024년 7월 12일)  코드카타 문제풀이APC2shake!(Silver 5, 31925번, 마라톤)문제 내용 문제 풀이 방법참가자 명단에서(N) 위 글의 조건을 만족하는 참가자들의 이름을 사전순으로 정렬해서 출력.  해결 코드(스포 주의)더보기import java.io.BufferedReaderimport java.io.InputStreamReaderfun main() = with(BufferedReader(InputStreamReader(System.`in`))) { val students = readLine().toInt() var studentList = mutableListOf>() for (i in 0 until students) { // .. 2024. 7. 12.
[Android, 내일배움캠프] 공부일지(2024-07-11) 오늘 공부한 내용 정리(2024년 7월 11일)  코드카타 문제풀이타일(Bronze 1, 5556번, 마라톤)문제 내용 문제 풀이 방법상근이가 N x N 정사각형에 타일을 바깥쪽에서 안쪽으로 빨강 - 파랑 - 노랑 순으로 타일을 구성했을 때, 창영이가 제거한 타일의 위치가 주어지고, 제거된 타일이 무슨 색인지 숫자로 출력.빨강: 1, 파랑: 2, 노랑: 3중앙을 기준으로 대각선 또는 직선으로 접으면 색상의 위치가 바뀌지 않은 채로 주어진 제거된 타일의 위치를 보기 편한 위치로 옮길 수 있다.이를 이용해 최대한 한쪽으로 제거 타일을 몰아서 위치를 확인할 것이다.  해결 코드(스포 주의)더보기import java.io.BufferedReaderimport java.io.InputStreamReaderfun .. 2024. 7. 11.
[Android, 내일배움캠프] 공부일지(2024-07-10) 오늘 공부한 내용 정리(2024년 월 일)  코드카타 문제풀이방 배정하기(Bronze 2, 14697번, 마라톤)문제 내용 문제 풀이 방법방 종류가 3개 주어진다. 한 방에 들어갈 수 있는 학생이 몇 명인지 주어지고(A, B, C) 전체 학생 수(N)가 주어질 때, 방에 빈자리 없이 방을 배정할 수 있는 경우 1을, 그렇지 않으면 0을 출력.방에 들어갈 수 있는 모든 경우의 수를 체크하면서, 경우의 수들 중 전체 학생 수와 같은 값이 있으면 1을 출력.  해결 코드(스포 주의)더보기import java.io.BufferedReaderimport java.io.InputStreamReaderfun main() = with(BufferedReader(InputStreamReader(System.`in`))).. 2024. 7. 10.
[Android, 내일배움캠프] 공부일지(2024-07-09) 오늘 공부한 내용 정리(2024년 7월 9일)  코드카타 문제풀이마라톤 1(Silver 3, 10655번)문제 내용 문제 풀이 방법체크포인트의 개수 N이 주어지고, 체크포인트의 좌표가 주어질 때, 1번째, 마지막 번째의 체크 포인트를 제외한 체크포인트 중 하나를 건너뛰고 체크포인트를 건너려고 할 때, 체크포인트 1개를 건너뛰고 달릴 수 있는 최소 거리를 출력.두 좌표 사이의 거리는 택시 거리를 이용해 구한다.  해결 코드(스포 주의)더보기import java.io.BufferedReaderimport java.io.InputStreamReaderimport kotlin.math.absimport kotlin.math.minfun main() = with(BufferedReader(InputStreamRe.. 2024. 7. 9.
[Android, 내일배움캠프] 공부일지(2024-07-08) 오늘 공부한 내용 정리(2024년 7월 8일)  코드카타 문제풀이신나는 함수 실행(Silver 2, 9184번)문제 내용 문제 풀이 방법재귀 함수 w를 수행했을 때, 함수의 결과를 출력. 입력은 a, b, c 모두가 -1일 때까지 입력받는다.  해결 코드(스포 주의)더보기import java.io.BufferedReaderimport java.io.InputStreamReaderprivate val dp = Array(21) { Array(21) { Array(21) { 0 } } }fun main() = with(BufferedReader(InputStreamReader(System.`in`))) { while (true) { val (a, b, c) = readLine().split.. 2024. 7. 8.
[Android, 내일배움캠프] 공부일지(2024-07-05) 오늘 공부한 내용 정리(2024년 7월 5일)  코드카타 문제풀이역원소 정렬(Silver 5, 5648번, 마라톤)문제 내용 문제 풀이 방법첫 번째 입력이(N) 숫자의 개수이고 N개의 숫자가 공백과 줄 바꿈 되어 주어질 때, 입력받은 숫자들을 모두 거꾸로 뒤집은 값을 오름차순으로 정렬해 출력.  해결 코드(스포 주의)더보기import java.io.BufferedReaderimport java.io.InputStreamReaderimport java.util.StringTokenizerfun main() = with(BufferedReader(InputStreamReader(System.`in`))) { var st = StringTokenizer(readLine()) var num = st... 2024. 7. 5.
[Android, 내일배움캠프] 공부일지(2024-07-04) 오늘 공부한 내용 정리(2024년 7월 4일)  코드카타 문제풀이🍎📦 '사과상자'에 들어있는 것은 무엇? 현금?(Bronze 1, 29724번, 마라톤)문제 내용문제 내용이 너무 길어서 입출력 부분만 캡처했다. 문제의 본문을 보고 싶다면 아래 링크.https://www.acmicpc.net/problem/29724 문제 풀이 방법상자의 수(N)가 주어지고, 바로 다음에 상자의 종류(T)와 상자의 가로(W), 높이(H), 세로(L)가 주어질 때, T가 A인 상자에 들어갈 수 있는 사과의 값어치와 상자의 총질량을 출력.사과의 질량은 1개당 500g이고, 배는 1박스에 120g짜리의 배즙 50개가 고정적으로 들어간다.사과 1개의 크기는 12 x 12 x 12의 정육면체이다.사과 1개의 가격은 4000원이다.. 2024. 7. 4.
[Android, 내일배움캠프] 공부일지(2024-07-03) 오늘 공부한 내용 정리(2024년 7월 3일)  코드카타 문제풀이삼각 무늬 1(Bronze 3, 11320번, 마라톤)문제 내용 문제 풀이 방법두 정삼각형의 길이 A, B가 주어지고, 한 변의 길이가 A인 정삼각형을 한 변이 B인 정삼각형을 몇 개를 사용해야 완전히 덮을 수 있는지 출력.  해결 코드(스포 주의)더보기import java.io.BufferedReaderimport java.io.InputStreamReaderfun main() = with(BufferedReader(InputStreamReader(System.`in`))) { val case = readLine().toInt() for (i in 0 until case) { var increaseValue = 1 .. 2024. 7. 3.
[Android, 내일배움캠프] 공부일지(2024-07-02) 오늘 공부한 내용 정리(2024년 7월 2일)  코드카타 문제풀이나무 자르기(Silver 2, 2805번)문제 내용 문제 풀이 방법나무의 개수(N)와 가져가고자 하는 나무의 길이(M)가 주어질 때, M미터의 나무를 가져가기 위해 나무를 자를 수 있는 높이의 최댓값을 출력.  해결 코드(스포 주의)더보기import java.io.BufferedReaderimport java.io.InputStreamReaderprivate var needTree = 0Lprivate var treeList = listOf()fun main() = with(BufferedReader(InputStreamReader(System.`in`))) { val treeInfo = readLine().split(" ").map .. 2024. 7. 2.
[Android, 내일배움캠프] 공부일지(2024-07-01) 오늘 공부한 내용 정리(2024년 7월 1일)  코드카타 문제풀이다각형의 면적(Gold 5, 2166번)문제 내용 문제 풀이 방법N개의 점으로 이루어지는 다각형의 면적을 구해서 출력.  해결 코드(스포 주의)더보기import java.io.BufferedReaderimport java.io.InputStreamReaderimport java.math.BigDecimalimport java.math.RoundingModeimport kotlin.math.absprivate var points = mutableListOf>()fun main() = with(BufferedReader(InputStreamReader(System.`in`))) { val case = readLine().toInt() .. 2024. 7. 1.
[Android] 공부일지(2024-06-29) 오늘 공부한 내용 정리(2024년 6월 29일)  알고리즘 문제풀이트리(Gold 5, 1068번)문제 내용 문제 풀이 방법노드의 개수(N)와 각 노드의 부모가 주어질 때, 리프 노드의 개수를 출력.리프 노드란 트리에서 자식 노드가 없는 노드를 뜻한다.  해결 코드(스포 주의)더보기import java.util.*private var tree = mutableMapOf>()fun main() = with(Scanner(System.`in`)) { val nodeCnt = nextInt() // node는 0부터 nodeCnt -1 까지 존재함. for (node in 0 until nodeCnt) { // parent: node의 부모 노드 val parent = .. 2024. 6. 29.
[Android, 내일배움캠프] 공부일지(2024-06-28) 오늘 공부한 내용 정리(2024년 6월 28일)  코드카타 문제풀이게임(Silver 3, 1072번)문제 내용 문제 풀이 방법게임 횟수(X)와 이긴 게임의 개수(Y)가 주어질 때, Z는 현재 승률이다. 형택이가 게임을 몇 번 이겨야 Z가 변하는지 출력.  해결 코드(스포 주의)더보기import java.io.BufferedReaderimport java.io.InputStreamReaderprivate var winRate = 0private var games = 0private var winCnt = 0fun main() = with(BufferedReader(InputStreamReader(System.`in`))) { val input = readLine().split(" ").map { it.. 2024. 6. 28.
[Kotlin, 내일배움캠프] 공부일지(2024-06-27) 오늘 공부한 내용 정리(2024년 6월 27일)  코드카타 문제풀이염색체(Silver 3, 9342번, 마라톤)문제 내용 문제 풀이 방법입력받은 문자열이 사진에 정의된 규칙을 만족하면 Infected! 를, 그렇지 않으면 Good를 출력.  해결 코드(스포 주의)더보기import java.io.BufferedReaderimport java.io.InputStreamReaderfun main() = with(BufferedReader(InputStreamReader(System.`in`))) { val case = readLine().toInt() for (i in 0 until case) { val string = readLine() val regex = Regex(".. 2024. 6. 27.
[Kotlin, 내일배움캠프] 공부일지(2024-06-26) 오늘 공부한 내용 정리(2024년 6월 26일)  코드카타 문제풀이숫자 게임(Silver 5, 2303번, 마라톤)문제 내용 문제 풀이 방법N명의 사람들에게 5장의 카드가 주어질 때, 5장의 카드에서 3장의 카드를 뽑은 후, 뽑은 카드의 합에서 일의 자리가 가장 크게 되도록 카드를 선택해야 할 때, 각각의 사람들의 일의 자리 중 가장 큰 값을 뽑은 사람이 몇 번째 사람인지 출력.일의 자리가 제일 큰 사람이 여러 명이면 번호가 가장 큰 사람의 번호를 출력한다(그냥 가장 나중에 입력받은 사람이 우선이라는 뜻이다).  해결 코드(스포 주의)더보기import java.io.BufferedReaderimport java.io.InputStreamReaderfun main() = with(BufferedReader.. 2024. 6. 26.
[Android, 내일배움캠프] 공부일지(2024-06-25) 오늘 공부한 내용 정리(2024년 6월 25일)  코드카타 문제풀이트리의 부모 찾기(Silver 2, 11725번)문제 내용 문제 풀이 방법루트가 1인 트리가 있고 트리 상 연결된 노드들의 정점이 주어질 때, 2번 노드부터 각 노드의 부모 노드를 순서대로 출력.  해결 코드(스포 주의)더보기import java.io.BufferedReaderimport java.io.InputStreamReaderimport java.util.LinkedListimport java.util.Queueprivate var graph = arrayOf>()private var visited = booleanArrayOf()private var parentNode = arrayOf()fun main() = with(Buffe.. 2024. 6. 25.
[Android, 내일배움캠프] 공부일지(2024-06-24) 오늘 공부한 내용 정리(2024년 6월 24일)  코드카타 문제풀이단지 번호 붙이기(Silver 1, 2667번)문제 내용 문제 풀이 방법1이 집이 있는 곳, 0이 집이 없는 곳일 때, 아파트 단지의  개수와 각 단지 내 집의 개수를 오름차순으로 정렬해 출력.이 문제에서 아파트 단지의 정의는 1이 2개 이상 연결되어 있지 않고 1이 각각 따로 떨어져 있어도 개별의 단지로 인식한다.  해결 코드(스포 주의)더보기import java.io.BufferedReaderimport java.io.InputStreamReaderprivate val dx = listOf(-1,1,0,0)private val dy = listOf(0,0,-1,1)private var graph = arrayOf>()private va.. 2024. 6. 24.
[Android, 내일배움캠프] 공부일지(2024-06-21) 오늘 공부한 내용 정리(2024년 6월 21일)  코드카타 문제풀이수면 패턴(마라톤 문제, Bronze 1, 19843번)문제 내용 문제 풀이 방법수면 횟수만큼 수면 시작일, 시간과 수면 종료일 시간이 주어졌을 때, 수면 시간을 구해서 모두 더한 값이 주말에 풀로 잘 수 있는 시간(48시간) 보다 크다면 -1을 출력, 충분히 잠을 잔 경우에는 0을, 그 이외의 경우는 주말에 자야 하는 시간을 출력한다.  해결 코드(스포 주의)더보기import java.io.BufferedReaderimport java.io.InputStreamReaderfun main() = with(BufferedReader(InputStreamReader(System.`in`))) { val (sleepHour, case) =.. 2024. 6. 21.
[Android, 내일배움캠프] 공부일지(2024-06-20) 오늘 공부한 내용 정리(2024년 6월 20일)  코드카타 문제풀이진법 변환(Bronze 2, 2745번)문제 내용 문제 풀이 방법B진법 수 N이 주어질 때 N을 10진법으로 변환해서 출력.  해결 코드(스포 주의)더보기import java.io.BufferedReaderimport java.io.InputStreamReaderfun main() = with(BufferedReader(InputStreamReader(System.`in`))) { val (num, decimal) = readLine().split(" ") println(num.toInt(decimal.toInt()))} 풀이 과정num(변경할 수)과 decimal(변환할 진법)을 입력받는다.num을 decimal 진법으로 변환.. 2024. 6. 20.
[Android, 내일배움캠프] 공부일지(2024-06-19) 오늘 공부한 내용 정리(2024년 6월 19일)  코드카타 문제풀이절댓값 힙(Silver 1, 11286번)문제 내용 문제 풀이 방법데이터를 입력받다가 리스트에서 절댓값이 가장 작은 값들 중 원본 값이 가장 작은 값을 리스트에서 제거한다. 리스트가 비어있으면 0을 출력.  해결 코드(스포 주의)더보기import java.io.BufferedReaderimport java.io.InputStreamReaderimport java.util.*import kotlin.math.absfun main() = with(BufferedReader(InputStreamReader(System.`in`))) { val numbers = readLine().toInt() // o1, o2를 절댓값으로 비교 후 .. 2024. 6. 19.
[Android, 내일배움캠프] 공부일지(2024-06-18) 오늘 공부한 내용 정리(2024년 6월 18일)  코드카타 문제풀이프린터 큐(Silver 3, 1966번)문제 내용 문제 풀이 방법문서의 개수인 N과 큐에서 출력할 데이터의 index인 M이 주어지고 중요도가 숫자로 N개가 주어질 때, M에 해당하는 데이터가 몇 번째로 뽑히는지 출력.  출력 순서가 많이 헷갈릴 수 있는 문제이다. 입력 예시가6 01 1 9 1 1 1이면, 0번째 index의 값인 첫 번째 1을 값으로 잡아야 한다. 하지만 1이 첫 번째에 있다고 무턱대고 뽑으면 안 된다. 뒤에 우선순위가 더 높은 9가 있기 때문이다. 9를 먼저 빼고 나면 다음과 같이 된다.1 1 1 [1] 1가장 큰 값이었던 9를 출력했으니 출력을 1번 한 상태이다.이제 위 큐에서 최댓값은 1이기 때문에 1을 계속 제거.. 2024. 6. 18.
[Android, 내일배움캠프] 공부일지(2024-06-17) 오늘 공부한 내용 정리(2024년 6월 17일)  코드카타 문제풀이회의실 배정(Silver 1, 1931번)문제 내용 문제 풀이 방법회의의 개수 n과 n번의 회의 시작 시간과 끝 시간이 순서대로 주어질 때, 위의 시간을 최대한 활용해 사용할 수 있는 회의의 최대 개수를 출력한다.회의의 진행시간이 적은 순으로 정렬하면 편하다. 해결 코드(스포 주의)더보기import java.io.BufferedReaderimport java.io.InputStreamReaderfun main() = with(BufferedReader(InputStreamReader(System.`in`))) { val meetingArray = Array>(readLine().toInt()) { emptyList() } for.. 2024. 6. 17.
728x90
반응형