[2023-04-16] 스타트와 링크(Kotlin)
문제 링크: https://www.acmicpc.net/problem/14889 14889번: 스타트와 링크 예제 2의 경우에 (1, 3, 6), (2, 4, 5)로 팀을 나누면 되고, 예제 3의 경우에는 (1, 2, 4, 5), (3, 6, 7, 8)로 팀을 나누면 된다. www.acmicpc.net 문제 풀이는 쉬웠다고 생각합니다. 하지만 시간복잡도를 줄이는데에 있어서 많이 힘들었습니다. package sixteenthDay import java.io.* import java.util.* fun main(){ val br = BufferedReader(InputStreamReader(System.`in`)) val n = br.readLine().toInt() var valueArr = Array(n..
2023. 4. 16.
[2023-04-14] 1041 주사위(Kotlin)
문제 링크: https://www.acmicpc.net/problem/1041 1041번: 주사위 첫째 줄에 N이 주어진다. 둘째 줄에 주사위에 쓰여 있는 수가 주어진다. 위의 그림에서 A, B, C, D, E, F에 쓰여 있는 수가 차례대로 주어진다. N은 1,000,000보다 작거나 같은 자연수이고, 쓰여 있는 수 www.acmicpc.net 가장 윗 부분과, 나머지 부분을 나눠서 생각했습니다. 윗 부분 윗 부분에는 3면이 보이는 주사위가 4개, 2면이 보이는 주사위가 (n - 1)*4개, 1면이 보이는 주사위가 (n - 1)^2 개가 있습니다. 아랫 부분 한 층만을 생각해 볼 때, 2 면이 보이는 주사위가 4개, 1면이 보이는 주사위가 (n - 1) * 4개가 있습니다. 윗 부분을 제외한 모든 충의..
2023. 4. 14.
[2023-04-13] 14888 연산자 끼워넣기 + 6문제
문제 링크: https://www.acmicpc.net/problem/14888 14888번: 연산자 끼워넣기 첫째 줄에 수의 개수 N(2 ≤ N ≤ 11)가 주어진다. 둘째 줄에는 A1, A2, ..., AN이 주어진다. (1 ≤ Ai ≤ 100) 셋째 줄에는 합이 N-1인 4개의 정수가 주어지는데, 차례대로 덧셈(+)의 개수, 뺄셈(-)의 개수, www.acmicpc.net 보통은 dfs를 사용할 때, visit이라는 배열을 만들어 이용을 했었습니다. 그러나 해당 문제에서는 값의 개수가 주어지기 때문에, 배열보다는 map을 이용하는 것이 더 좋겠다는 생각이 들었습니다. package thirteenthDay import java.io.* // 입력에서 0번째는 +, 1번째는 -, 2번째는 *, 3번째..
2023. 4. 13.