結果
| 問題 | No.782 マイナス進数 |
| コンテスト | |
| ユーザー |
6soukiti29
|
| 提出日時 | 2019-07-14 02:21:28 |
| 言語 | Nim (2.2.6) |
| 結果 |
CE
(最新)
AC
(最初)
|
| 実行時間 | - |
| コード長 | 788 bytes |
| 記録 | |
| コンパイル時間 | 517 ms |
| コンパイル使用メモリ | 66,284 KB |
| 最終ジャッジ日時 | 2026-03-23 10:04:29 |
| 合計ジャッジ時間 | 949 ms |
|
ジャッジサーバーID (参考情報) |
judge2_1 / judge3_0 |
(要ログイン)
コンパイルエラー時のメッセージ・ソースコードは、提出者また管理者しか表示できないようにしております。(リジャッジ後のコンパイルエラーは公開されます)
ただし、clay言語の場合は開発者のデバッグのため、公開されます。
ただし、clay言語の場合は開発者のデバッグのため、公開されます。
コンパイルメッセージ
/home/judge/data/code/Main.nim(15, 34) Error: tuple expected for tuple unpacking, but got 'seq[int]'
ソースコード
import sequtils,strutils
var
t,B,N : int
proc pow(a, b : int) :int=
if b == 0:
return 1
elif b == 1:
return a
elif b mod 2 == 0:
return pow(a * a, b div 2)
else:
return pow(a, b - 1) * a
(t, B) = stdin.readline.split.map(parseInt)
B *= -1
for i in 0..<t:
N = stdin.readline.parseInt
if N == 0:
echo 0
continue
var s : string = ""
for k in 0..33:
if N == 0:
break
if k mod 2 == 0:
var c = (N mod pow(B, k + 1)) div pow(B, k)
N -= c * pow(B, k)
s = $c & s
else:
var c = (N mod pow(B, k + 1)) div pow(B, k)
if c != 0:
c = B - c
N += c * pow(B , k)
s = $c & s
echo s
6soukiti29