結果

問題 No.757 チャンパーノウン定数 (2)
ユーザー omochanalomochanal
提出日時 2018-12-19 18:09:48
言語 PyPy3
(7.3.15)
結果
RE  
実行時間 -
コード長 697 bytes
コンパイル時間 166 ms
コンパイル使用メモリ 81,780 KB
実行使用メモリ 67,316 KB
最終ジャッジ日時 2024-09-25 08:04:25
合計ジャッジ時間 4,618 ms
ジャッジサーバーID
(参考情報)
judge5 / judge4
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample RE * 3
other RE * 51
権限があれば一括ダウンロードができます

ソースコード

diff #

import numpy

def Base_10_to_n(X, n, R):
    X = X // (n ** R)
    if X == n:
        return 1
    else :
        return X % n

def Base_n_to_10(X,n):
    out = 0
    tmp = 1
    for i in range(1,len(str(X))+1):
        out += int(X[-i])*tmp
        tmp *= n
    return out#int out

def f(l, B):
    return ((l * B - l - 1) * B ** l + 1) // (B - 1)

B = input()
N = input()
B = int(B)

N = Base_n_to_10(N, B) - 1

l = 0
lv = 0
rv = 100000

while rv - lv > 1:
    m = (lv + rv) // 2
    if f(m, B) < N:
        lv = m
    else:
        rv = m

l = lv
bound = f(l, B)

N -= bound
Q = N // (l + 1) + B ** l
R = N % (l + 1)

# print(N, Q, R, l, bound)
print(Base_10_to_n(Q, B, l - R))

# print(Q, R)

0