Submission #17059875
Source Code Expand
import Foundation // 第一引数には約数を列挙したい自然数を渡す func print_divisors(n:Int)->[Int]{ // 戻り値となる配列の初期化 var divisors:[Int] = [] // ループを回すのは√nまでで十分 for i in 1...Int(sqrt(Double(n))){ // 割り切れるならiはnの約数 if n % i == 0{ divisors.append(i) // i != n / i なら i^2 != n if i != n / i{ divisors.append(n/i) } } } // 配列をソートする divisors.sort{ $0 < $1 } // divisorsを返す return divisors } // 標準入力の受け取り let n = Int(readLine()!)! // 約数列挙 let check = print_divisors(n:n) // 答えとなる変数ansの初期化 (とりあえずめっちゃでかい値入れておく) var ans = 100000000000000 // 各約数についてループを回す for i in check{ // ループは √n までで十分 if i > Int(sqrt(Double(n))){ break } // より小さい値をansに代入 ans = min(ans,i+n/i-2) } // 答えを返す print(ans)
Submission Info
Submission Time | |
---|---|
Task | C - Walk on Multiplication Table |
User | tardigrade |
Language | Swift (5.2.1) |
Score | 300 |
Code Size | 1163 Byte |
Status | AC |
Exec Time | 78 ms |
Memory | 13500 KiB |
Judge Result
Set Name | Sample | All | ||||
---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 300 / 300 | ||||
Status |
|
|
Set Name | Test Cases |
---|---|
Sample | sample_01, sample_02, sample_03 |
All | hand_01, hand_02, hand_03, hand_04, hand_05, hand_06, hand_07, hand_08, large_01, large_02, large_03, large_04, large_05, large_06, large_07, large_08, prime_01, prime_02, prime_03, random_01, random_02, random_03, random_04, random_05, random_06, random_07, random_08, sample_01, sample_02, sample_03, small_01, small_02, small_03, small_04, small_05, small_06, small_07, small_08, square_01, square_02, square_03 |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
hand_01 | AC | 78 ms | 13148 KiB |
hand_02 | AC | 13 ms | 13080 KiB |
hand_03 | AC | 23 ms | 13008 KiB |
hand_04 | AC | 25 ms | 12816 KiB |
hand_05 | AC | 15 ms | 12800 KiB |
hand_06 | AC | 22 ms | 13500 KiB |
hand_07 | AC | 20 ms | 13188 KiB |
hand_08 | AC | 26 ms | 12816 KiB |
large_01 | AC | 24 ms | 12916 KiB |
large_02 | AC | 35 ms | 12744 KiB |
large_03 | AC | 21 ms | 13080 KiB |
large_04 | AC | 27 ms | 13212 KiB |
large_05 | AC | 26 ms | 13084 KiB |
large_06 | AC | 20 ms | 12996 KiB |
large_07 | AC | 25 ms | 13008 KiB |
large_08 | AC | 23 ms | 12736 KiB |
prime_01 | AC | 22 ms | 13184 KiB |
prime_02 | AC | 17 ms | 12748 KiB |
prime_03 | AC | 21 ms | 13240 KiB |
random_01 | AC | 20 ms | 13188 KiB |
random_02 | AC | 22 ms | 13084 KiB |
random_03 | AC | 16 ms | 12872 KiB |
random_04 | AC | 25 ms | 13188 KiB |
random_05 | AC | 14 ms | 13000 KiB |
random_06 | AC | 24 ms | 13240 KiB |
random_07 | AC | 26 ms | 13260 KiB |
random_08 | AC | 20 ms | 12996 KiB |
sample_01 | AC | 9 ms | 13380 KiB |
sample_02 | AC | 11 ms | 13240 KiB |
sample_03 | AC | 18 ms | 13080 KiB |
small_01 | AC | 9 ms | 13192 KiB |
small_02 | AC | 9 ms | 12944 KiB |
small_03 | AC | 13 ms | 13380 KiB |
small_04 | AC | 8 ms | 13188 KiB |
small_05 | AC | 9 ms | 12920 KiB |
small_06 | AC | 12 ms | 13000 KiB |
small_07 | AC | 10 ms | 13380 KiB |
small_08 | AC | 10 ms | 13212 KiB |
square_01 | AC | 16 ms | 12896 KiB |
square_02 | AC | 18 ms | 12748 KiB |
square_03 | AC | 26 ms | 12984 KiB |