結果
問題 | No.2177 Recurring ab |
ユーザー |
|
提出日時 | 2023-01-06 22:21:10 |
言語 | Kotlin (2.1.0) |
結果 |
AC
|
実行時間 | 269 ms / 2,000 ms |
コード長 | 1,413 bytes |
コンパイル時間 | 16,716 ms |
コンパイル使用メモリ | 440,008 KB |
実行使用メモリ | 50,180 KB |
最終ジャッジ日時 | 2024-11-30 18:35:44 |
合計ジャッジ時間 | 18,399 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 18 |
ソースコード
import java.io.PrintWriterimport java.util.*import kotlin.math.*fun PrintWriter.solve() {val n = nextInt()var ans = 0Lfor (a in 0..9) {for (b in 0..9) {if (a == b) continueval start = maxOf(a, b) + 1Lvar left = maxOf(a, b) + 1Lif (left * left - a * n * left - b * n - 1 >= 0) continuevar right = 1000000002Lwhile (right - left > 1) {val mid = (left + right) / 2if (mid * mid - a * n * mid - b * n - 1 < 0) {left = mid} else {right = mid}}ans += left - start + 1}}println(ans)}fun main() {Thread(null, {val writer = PrintWriter(System.out, false)writer.solve()writer.flush()}, "solve", abs(1L.shl(26))).apply { setUncaughtExceptionHandler { _, e -> e.printStackTrace(); kotlin.system.exitProcess(1) } }.apply { start() }.join()}// region Scannerprivate var st = StringTokenizer("")private val br = System.`in`.bufferedReader()fun next(): String {while (!st.hasMoreTokens()) st = StringTokenizer(br.readLine())return st.nextToken()}fun nextInt() = next().toInt()fun nextLong() = next().toLong()fun nextLine() = br.readLine()fun nextDouble() = next().toDouble()// endregion