From 5e814f478f105f9705ab37f756af5d92947e3997 Mon Sep 17 00:00:00 2001 From: JJAE WON <55980680+ashwon12@users.noreply.github.com> Date: Mon, 24 Oct 2022 15:35:55 +0900 Subject: [PATCH 1/3] =?UTF-8?q?[Feat]=20=ED=8A=B8=EB=A6=AC=EC=9D=98=20?= =?UTF-8?q?=EB=B6=80=EB=AA=A8=20=EC=B0=BE=EA=B8=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...0\353\252\250 \354\260\276\352\270\260.kt" | 32 +++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 "src/3week/jaewon/\355\212\270\353\246\254\354\235\230 \353\266\200\353\252\250 \354\260\276\352\270\260.kt" diff --git "a/src/3week/jaewon/\355\212\270\353\246\254\354\235\230 \353\266\200\353\252\250 \354\260\276\352\270\260.kt" "b/src/3week/jaewon/\355\212\270\353\246\254\354\235\230 \353\266\200\353\252\250 \354\260\276\352\270\260.kt" new file mode 100644 index 0000000..78daa80 --- /dev/null +++ "b/src/3week/jaewon/\355\212\270\353\246\254\354\235\230 \353\266\200\353\252\250 \354\260\276\352\270\260.kt" @@ -0,0 +1,32 @@ +import java.lang.StringBuilder +import java.util.LinkedList + +fun main(){ + val n = readln().toInt() + val tree = Array(n+1){ LinkedList()} + val visited = BooleanArray(n+1){ false } + val parents = IntArray(n+1){-1} + //인접리스트 만들기 + repeat(n-1){ + val (a,b) = readln().split(" ").map { it.toInt() } + tree[a].add(b) + tree[b].add(a) + } + + fun dfs(n: Int){ + for(num in tree[n]){ + if(!visited[num]) { + visited[num] = true + parents[num] = n + dfs(num) + } + } + } + + dfs(1) + val answer = StringBuilder() + for (i in 2..n){ + answer.append("${parents[i]}\n") + } + println(answer.toString()) +} \ No newline at end of file From 42d69720921ad1855af6e857dbaa2e22a9707b66 Mon Sep 17 00:00:00 2001 From: JJAE WON <55980680+ashwon12@users.noreply.github.com> Date: Mon, 24 Oct 2022 22:10:59 +0900 Subject: [PATCH 2/3] =?UTF-8?q?[Feat]=20=ED=9A=8C=EC=9D=98=EC=8B=A4=20?= =?UTF-8?q?=EB=B0=B0=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...0\354\213\244 \353\260\260\354\240\225.kt" | 33 +++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 "src/3week/jaewon/\355\232\214\354\235\230\354\213\244 \353\260\260\354\240\225.kt" diff --git "a/src/3week/jaewon/\355\232\214\354\235\230\354\213\244 \353\260\260\354\240\225.kt" "b/src/3week/jaewon/\355\232\214\354\235\230\354\213\244 \353\260\260\354\240\225.kt" new file mode 100644 index 0000000..173ae9f --- /dev/null +++ "b/src/3week/jaewon/\355\232\214\354\235\230\354\213\244 \353\260\260\354\240\225.kt" @@ -0,0 +1,33 @@ + +class jaewon회의실배정 { + + data class TimeTable(val start : Int, val end : Int) + + fun solution(){ + val n = readln().toInt() + val timeTable = mutableListOf() + var endTime = 0 + var count = 0 + + repeat(n){ + val (start,end) = readln().split(" ").map { it.toInt() } + timeTable.add(TimeTable(start, end)) + } + + timeTable + .sortedWith( compareBy { it.end }.thenBy { -(it.end - it.start) }) + .forEach { + if (it.start >= endTime){ + count++ + endTime = it.end + } + } + + println(count) + } +} + +fun main(){ + jaewon회의실배정().solution() +} + From 13d060e8be02286bcf667c348cbb9022fab3d300 Mon Sep 17 00:00:00 2001 From: JJAE WON <55980680+ashwon12@users.noreply.github.com> Date: Thu, 27 Oct 2022 19:47:38 +0900 Subject: [PATCH 3/3] =?UTF-8?q?[Feat]=20=EC=A3=BC=EC=B0=A8=20=EC=9A=94?= =?UTF-8?q?=EA=B8=88=20=EA=B3=84=EC=82=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...4\352\270\210 \352\263\204\354\202\260.kt" | 42 +++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 "src/3week/jaewon/\354\243\274\354\260\250 \354\232\224\352\270\210 \352\263\204\354\202\260.kt" diff --git "a/src/3week/jaewon/\354\243\274\354\260\250 \354\232\224\352\270\210 \352\263\204\354\202\260.kt" "b/src/3week/jaewon/\354\243\274\354\260\250 \354\232\224\352\270\210 \352\263\204\354\202\260.kt" new file mode 100644 index 0000000..59e18b8 --- /dev/null +++ "b/src/3week/jaewon/\354\243\274\354\260\250 \354\232\224\352\270\210 \352\263\204\354\202\260.kt" @@ -0,0 +1,42 @@ +class jaewon_Solution { + fun solution(fees: IntArray, records: Array): IntArray { + var answer: IntArray = intArrayOf() + val keys = records.groupBy{it.split(" ")[1]} + val blank = keys.keys.associateWith{0}.toMutableMap() + + keys.values.forEach{ key -> + val times = key.map{(it.split(" ")[0].split(":"))}.flatten().toMutableList() + if(times.size%4 != 0){ + times.add("23") + times.add("59") + } + var i = 0 + var total = 0 + repeat(times.size/4){ + // 입출차 셋트 + var h = (times[i+2].toInt()-times[i].toInt()) * 60 + var m = times[i+3].toInt()-times[i+1].toInt() + total += h+m + i+=4 + } + blank[key[0].split(" ")[1]] = total + } + + answer = blank.mapValues{ + val v = it.value + var temp = 0 + if(fees[0] < v){ + val add = if((v-fees[0])%fees[2] != 0) (v-fees[0])/fees[2]+1 else (v-fees[0])/fees[2] + temp = add*fees[3] + } + fees[1] + temp + }.toList().sortedBy{it.first}.map{it.second}.toIntArray() + return answer + } +} + +fun main(){ + jaewon_Solution().solution( + intArrayOf(180,5000,10,600), arrayOf("05:34 5961 IN", "06:00 0000 IN", "06:34 0000 OUT", "07:59 5961 OUT", "07:59 0148 IN", "18:59 0000 IN", "19:09 0148 OUT", "22:59 5961 IN", "23:00 5961 OUT") + ) +} \ No newline at end of file