(A * B) mod C = (A mod C * B mod C) mod C A^B mod C의 경우에는 위 성질을 이용해도 되지만, 빠른 모듈로 거듭제곱법을 이용하면 훨씬 빠르게 풀 수 있다. 출처: https://ko.khanacademy.org/computing/computer-science/cryptography/modarithmetic/a/fast-modular-exponentiation 임의의 B에서 A^B mod C를 빨리 계산하는 방법 1단계: 이진수를 이용하여 B를 2의 거듭제곱으로 분해합니다. 맨 오른쪽 숫자부터 시작합니다. k=0이고 각각의 숫자는 다음과 같이 처리합니다. 숫자가 1이면 2^k 를 추가하고 그렇지 않으면 추가하지 않습니다 K에 이 숫자의 자릿수 1을 추가하고 다음 숫자를..
보호되어 있는 글입니다.
AppDelegate말고 SceneDelegate의 이 함수에서 대응해줘야한다... func scene(_ scene: UIScene, continue userActivity: NSUserActivity) { if let incomingURL = userActivity.webpageURL { print("Incoming URL is \(incomingURL)") let linkHandled = DynamicLinks.dynamicLinks().handleUniversalLink(incomingURL) { dynamicLink, error in guard error == nil else { print("Found an error \(error!.localizedDescription)") return } i..
1. AppDelegate의 didFinishLaunchingWithOptions에서 // Check if launched from notification let notificationOption = launchOptions?[.remoteNotification] if let notification = notificationOption as? [String: AnyObject], let aps = notification["aps"] as? [String: AnyObject] { print(aps) let userInfo = aps["data"]! print(userInfo["actionParam"]) let a = userInfo["actionParam"] let decoder = JSONDecoder(..
extension AppDelegate: UNUserNotificationCenterDelegate{ // This function will be called right after user tap on the notification func userNotificationCenter(_ center: UNUserNotificationCenter, didReceive response: UNNotificationResponse, withCompletionHandler completionHandler: @escaping () -> Void) { // tell the app that we have finished processing the user’s action / response completionHandle..
let screenName = data?.instagram ?? "" // CHANGE THIS let appURL = URL(string: "instagram://user?username=\(screenName)")! let webURL = URL(string: "https://instagram.com/\(screenName)")! if UIApplication.shared.canOpenURL(appURL) { if #available(iOS 10.0, *) { UIApplication.shared.open(appURL, options: [:], completionHandler: nil) } else { UIApplication.shared.openURL(appURL) } } else { // redi..
let center = UNUserNotificationCenter.current() center.getNotificationSettings { settings in guard (settings.authorizationStatus == .authorized) || (settings.authorizationStatus == .provisional) else { return } if settings.alertSetting == .enabled { // Schedule an alert-only notification. } else { // Schedule a notification with a badge and sound. } }
함수 제일 첫번째 인자 self의 의미 파이썬 메서드의 첫번째 파라미터명은 관례적으로 self라는 이름을 사용합니다. 호출 시 호출한 객체 자신이 전달되기 때문에 self라는 이름을 사용하게 된 것 이를 이용하여 클래스에서 바로 메소드로 접근하면서 위에서 할당한 Flight의 객체 f를 파라미터로 전달함으로써 똑같은 결과값 얻습니다. # 메소드 작성하기 class Flight: def number(self): return 'SN060' 이거랑 # 인스턴스의 메소드 사용 >>> from airtravel import Flight >>> f = Flight() >>> f.number() 'SN060' 이거랑 같다. # 클래스의 내부에 self 파라미터가 포함되는데 이를 이용한 접근법 >>> Flight.nu..