본문 바로가기

코딩테스트6

입력 방법 및 자주 사용되는 functions 입력 받기 기본 readLine()으로 입력 받음. readLine()은 Optional(String) 타입 1. String 입력 받기 let myString = readLine()! //입력이 확실한 경우 강제 언래핑 사용. 2. Int 입력 받기 let myInt = Int(readLine()!)! // Int 이니셜라이저도 Optional(Int)를 반환하므로 언래핑 필요 3. 공백으로 구분되는 입력 받기 let stringsWithBlanks = readLine()! let stringArray: [String] = stringsWithBlanks.split(separator: " ") let intsWithBlanks = readLine()! let intArray: [Int] = intsWi.. 2023. 11. 25.
LSCS 구하기 LSCS는 Largest Sum of Contiguous Subarray의 약자로, 연속된 부분배열의 합들 중 가장 큰 합을 의미합니다. 연속된 부분 배열이란 예를 들어서 전체 배열이 {1, 2, 3} 인 경우에 {1}, {1,2}, {1,2,3}, {2}, {2,3}, {3} 과 같이 인접한 원소들로만 이루어진 집합을 의미합니다. 이 배열의 LSCS는 부분배열 {1,2,3}의 원소의 합인 6이 됩니다. 원소들이 0이상의 정수라면 단순히 모든 원소를 다 더하면 LSCS가 되겠지만, 음수가 포함되는 경우는 조금 다른 결과가 나올 것입니다. 위의 문제를 만났을 때 배열의 index를 포인터 삼아 포인터를 옮겨가며 모든 부분배열 원소의 합을 각자 구한 뒤, 그 중에서 가장 큰 값을 구하는 방법을 사용했습니다... 2022. 7. 28.
Integer 나눗셈 시 소수점도 나타나게 하기 매번 헷갈려서 적어놓는 Integer끼리 / 연산자로 나눌 때, 소수점도 나타나게 하려면! int a = 1; int b = 3; //(double)로 캐스팅 해주어야 함! double result = (double) a / b; (double) casting을 하지 않으면 원하는 대로 값이 나오지 않는다. 그리고 소수점 자리수를 설정하려면! //"%.2f" String.format("%.2f", result); String.format("%.nf", 숫자); 이렇게 할 수 있다. n에 소수점 몇째 자리까지 할 지 숫자를 설정하면 됨 참고자료 https://www.wikihow.com/Divide-in-Java-with-Decimals#:~:text=If%20you%20need%20to%20divide,.. 2022. 6. 8.
2438-별 찍기 - 1 #Integer 하나 받아오기 let n = Int(readLine()!)! #String 여러번 반복하기 for i in 1...n{ let stars = String(repeating:"*", count:i) print(stars) } String 반복 방법 tutorial https://reactgo.com/swift-repeat-string/#:~:text=To%20repeat%20a%20string%20n%20number%20of%20times%2C%20we%20can,need%20to%20repeat%20that%20string. 2022. 1. 26.
11021-A+B-7 #Integer 하나 받아오기 let numberOfCases = Int(readLine()!)! #공백이 있는 숫자 나누기 for i in 1...numberOfCases{ let nums = readLine()!.split(separator:" ").map {Int($0)!} let result = nums[0]+nums[1] print("Case #\(i): \(result)") } 2022. 1. 26.
2739-구구단 #입력값 받기 let number = Int(readLine()!)! #구구단 계산하기 for i in 1...9{ print("\(number) * \(i) = \(number*i)") } 2022. 1. 26.
반응형