본문 바로가기

전체 글126

[2023-05-20] 1748 수 이어 쓰기 1 (Kotlin) 문제 링크: https://www.acmicpc.net/problem/1748 1748번: 수 이어 쓰기 1 첫째 줄에 N(1 ≤ N ≤ 100,000,000)이 주어진다. www.acmicpc.net 11분 걸렸습니다. package fiftyfirst import java.io.* fun main(){ val br = BufferedReader(InputStreamReader(System.`in`)) val n = br.readLine().toLong() var sum = 0 fun f(num: Long): Int{ var number = num var i = 1 while(number > 9){ number /= 10 i ++ } return i } for (index in 1..n){ sum +=.. 2023. 5. 20.
[2023-05-19] 2477 참외밭 (Kotlin) 문제 링크: https://www.acmicpc.net/problem/2477 2477번: 참외밭 첫 번째 줄에 1m2의 넓이에 자라는 참외의 개수를 나타내는 양의 정수 K (1 ≤ K ≤ 20)가 주어진다. 참외밭을 나타내는 육각형의 임의의 한 꼭짓점에서 출발하여 반시계방향으로 둘레를 돌면서 지 www.acmicpc.net 무려 3시간 가까이 걸렸습니다. 반례를 찾고, 또한 생각한 것을 구현하는데 시간이 많이 걸렸습니다. 다른 분의 풀이 보니깐 너무 허무하네요. 이런 사고력은 어떻게 길러야 할지 모르겠습니다. // 7 : 18 // 시작 지점을 (0,0)으로 정하고, // 반 시계방향으로 입력값에 따라 세 개의 꼭지점을 잡음 // 그 세개의 꼭지점에 대해서 사각형을 이루는 꼭지점을 배열에 저장 // 해.. 2023. 5. 19.
[2023-05-18] 2529 부등호 (Kotlin) 문제 링크: https://www.acmicpc.net/problem/2529 2529번: 부등호 여러분은 제시된 부등호 관계를 만족하는 k+1 자리의 최대, 최소 정수를 첫째 줄과 둘째 줄에 각각 출력해야 한다. 단 아래 예(1)과 같이 첫 자리가 0인 경우도 정수에 포함되어야 한다. 모든 입력 www.acmicpc.net 30분 걸렸습니다. // 4:50 시작 package fourtynineth import java.io.* fun main(){ val br = BufferedReader(InputStreamReader(System.`in`)) // 입력 받음 val n = br.readLine().toInt() val signs = br.readLine().split(' ') // 모든 경우의 수.. 2023. 5. 18.
[2023-05-17] 15686 치킨 배달 (Kotlin) 문제 링크: https://www.acmicpc.net/problem/15686 15686번: 치킨 배달 크기가 N×N인 도시가 있다. 도시는 1×1크기의 칸으로 나누어져 있다. 도시의 각 칸은 빈 칸, 치킨집, 집 중 하나이다. 도시의 칸은 (r, c)와 같은 형태로 나타내고, r행 c열 또는 위에서부터 r번째 칸 www.acmicpc.net 푸는데 50분이 소요되었습니다. 거의 다 풀어 간다고 느낄 때쯤 문제 이해를 잘못했다는 것을 깨달았습니다. 풀면서 생각하는 습관을 고쳐야 할 것 같습니다. // 6 : 50 시작 package fourtyeighth import java.io.* fun main(){ val br = BufferedReader(InputStreamReader(System.`in`).. 2023. 5. 17.
[2023-05-16] 17413 단어 뒤집기 2 (Kotlin) 문제 링크: https://www.acmicpc.net/problem/17413 17413번: 단어 뒤집기 2 문자열 S가 주어졌을 때, 이 문자열에서 단어만 뒤집으려고 한다. 먼저, 문자열 S는 아래와과 같은 규칙을 지킨다. 알파벳 소문자('a'-'z'), 숫자('0'-'9'), 공백(' '), 특수 문자('')로만 이루어져 www.acmicpc.net 1시간 20분이 걸렸습니다... 출력을 하는 방식을 고민하는데 시간을 많이 썼습니다. // 6 : 22 package fourtyseventh import java.io.* import java.util.* fun main() { val br = BufferedReader(InputStreamReader(System.`in`)) val s = br.re.. 2023. 5. 16.
[2023-05-16] 2960 에라토스테네스의 체 문제 링크: https://www.acmicpc.net/problem/2960 2960번: 에라토스테네스의 체 2, 4, 6, 8, 10, 3, 9, 5, 7 순서대로 지워진다. 7번째 지워진 수는 9이다. www.acmicpc.net 15분 걸렸습니다. // 5 : 44 package fourtyseventh import java.io.* import java.util.* fun main() { val br = BufferedReader(InputStreamReader(System.`in`)) val (n, k) = br.readLine().split(' ').map { it.toInt() } val arr = Array(n + 1) { 0 } for (index in 2..n) { arr[index].. 2023. 5. 16.
[2023-05-16] 2167 2차원 배열의 합 (Kotlin) 문제 링크: https://www.acmicpc.net/problem/2167 2167번: 2차원 배열의 합 첫째 줄에 배열의 크기 N, M(1 ≤ N, M ≤ 300)이 주어진다. 다음 N개의 줄에는 M개의 정수로 배열이 주어진다. 배열에 포함되어 있는 수는 절댓값이 10,000보다 작거나 같은 정수이다. 그 다음 줄에는 www.acmicpc.net 5분 걸렸습니다. package fourtyseventh import java.io.* import java.util.* fun main(){ val br = BufferedReader(InputStreamReader(System.`in`)) val (n,m) = br.readLine().split(' ').map{it.toInt()} val arr = A.. 2023. 5. 16.
[2023-05-16] 1475 방 번호 (Kotlin) 문제 링크: https://www.acmicpc.net/problem/1475 1475번: 방 번호 첫째 줄에 다솜이의 방 번호 N이 주어진다. N은 1,000,000보다 작거나 같은 자연수이다. www.acmicpc.net 20분이나 걸렸습니다. 생각을 먼저 하지 않고, 풀면서 고쳐나갔기 때문에 시간이 오래걸렸던 것 같습니다. package fourtyseventh import java.io.* fun main(){ val br = BufferedReader(InputStreamReader(System.`in`)) val n = br.readLine() val map = mutableMapOf() for (char in n){ map[char] = map.getOrDefault(char,0) + 1 }.. 2023. 5. 16.