본문 바로가기

코딩테스트24

[선택] 7785 회사에 있는 사람 정답 코드 var companyLog: Set = [] let count = Int(readLine()!)! for _ in 0.. 2024. 1. 29.
[선택] 2846 오르막길 let count = Int(readLine()!)! let arr = readLine()!.split(separator: " ").compactMap { Int($0) } var start = arr[0] var finish = arr[0] var maxUphilHeight = 0 for i in 1.. finish에 뒷 번호 값을 저장한다. 뒷 번호가 앞번호 보다 작은 경우 -> 오르막길이 끝나기에 끝지점부터 시작 지점 까지의 거리와 maxUphilHeight와 큰 값을 저장한다. 그리고 start와 finish를 다음 번호로 이동시켜 준다.(finish도 이동시키지 않으면 finish가 start앞 순서에 있어서 틀린다.) 마지막에 max값을 해주는 경우는 Case1의 경우와 같이 숫자가 오르막으로.. 2024. 1. 25.
[선택] 2947 나무 조각 var nums = readLine()!.split(separator: " ").compactMap { Int($0) } let arr = [1, 2, 3, 4, 5] solution() func solution() { while arr != nums{ for i in 0.. nums[i + 1] { let temp = nums[i + 1] nums[i + 1] = nums[i] nums[i] = temp print(nums.map { String($0) }.joined(separator: " ")) } } } } 코드 설명 입력을 nums 배열에 저장합니다. 배열이 arr 배열과 같을 때까지 while문을 순회합니다. 배열의 요소들이 요소 + 1 과 비교 했을 때 크다면 서로 위치를 변경해주고 해당 내.. 2024. 1. 25.
[선택] 10818 최소, 최대 let count = Int(readLine()!)! let nums = readLine()!.split(separator: " ").compactMap { Int($0) } var maxNum = Int.min var minNum = Int.max for num in nums { maxNum = max(maxNum, num) minNum = min(minNum, num) } print(minNum, maxNum) 코드 설명 해당 문제에서 count만큼의 input을 제공해주는 것이 확정적이기에 count는 필요없을 거 같다. nums에 Int 배열을 저장한다. for 문을 돌면서 최대값과 최저값을 저장한다. https://www.acmicpc.net/problem/10818 10818번: 최소, 최대 .. 2024. 1. 25.