結果
| 問題 |
No.638 Sum of "not power of 2"
|
| コンテスト | |
| ユーザー |
💕💖💞
|
| 提出日時 | 2018-04-05 22:02:20 |
| 言語 | Kotlin (2.1.0) |
| 結果 |
AC
|
| 実行時間 | 311 ms / 1,000 ms |
| コード長 | 685 bytes |
| コンパイル時間 | 11,160 ms |
| コンパイル使用メモリ | 434,464 KB |
| 実行使用メモリ | 51,296 KB |
| 最終ジャッジ日時 | 2024-11-20 15:39:12 |
| 合計ジャッジ時間 | 16,391 ms |
|
ジャッジサーバーID (参考情報) |
judge5 / judge2 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 2 |
| other | AC * 12 |
コンパイルメッセージ
Main.kt:3:10: warning: parameter 'args' is never used
fun main(args:Array<String>) {
^
ソースコード
import java.math.BigDecimal
fun main(args:Array<String>) {
val n = readLine()!!.toBigDecimal()
val m = ("1" + "0".repeat(18)).toBigDecimal()
val bs = mutableSetOf<BigDecimal>()
var tp = 1.toBigDecimal()
stack@while(true) {
if( tp > m ) break@stack
//println(tp)
bs.add( tp )
tp *= 2.toBigDecimal()
}
var x = 0.toBigDecimal()
var control = false
scan@while(true) {
x++
if( bs.contains(x) ) continue@scan
val y = n - x
if( !bs.contains(y) && y > 0.toBigDecimal() ) {
control = true
break@scan
}
if( x > n/2.toBigDecimal() ) break@scan
}
if( control )
println("${x} ${n - x}")
else
println("-1")
}
💕💖💞