結果
| 問題 |
No.757 チャンパーノウン定数 (2)
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2018-12-02 03:08:00 |
| 言語 | Ruby (3.4.1) |
| 結果 |
TLE
|
| 実行時間 | - |
| コード長 | 520 bytes |
| コンパイル時間 | 73 ms |
| コンパイル使用メモリ | 7,680 KB |
| 実行使用メモリ | 87,852 KB |
| 最終ジャッジ日時 | 2024-06-27 13:55:47 |
| 合計ジャッジ時間 | 6,793 ms |
|
ジャッジサーバーID (参考情報) |
judge2 / judge1 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 2 -- * 1 |
| other | AC * 26 TLE * 1 -- * 24 |
コンパイルメッセージ
Syntax OK
ソースコード
#!/usr/bin/ruby
starting=1
bse=gets.to_i
while gets
n=$_.to_i(bse)
n+=starting-2
digits=1
expbase=1
if false
while (x=expbase*(digits*(bse-1)))<=n
digits+=1
expbase*=bse
n-=x
end
else
digits=$_.size.downto(0).find{|digits|
z=bse**digits;z*digits-(z-1)/(bse-1)<=n
}+1
#while (z=bse**digits;z*digits-(z-1)/(bse-1)<=n)
# digits+=1
#end
expbase=bse**(digits-1)
n-=(digits-1)*expbase-(expbase-1)/(bse-1)
end
num=expbase+n/digits
d=digits-1-n%digits
d.times{num/=bse}
puts num%bse
end