結果

問題 No.64 XORフィボナッチ数列
ユーザー nobigomunobigomu
提出日時 2018-03-25 20:56:09
言語 Lua
(LuaJit 2.1.1696795921)
結果
RE  
実行時間 -
コード長 598 bytes
コンパイル時間 122 ms
コンパイル使用メモリ 5,328 KB
実行使用メモリ 4,504 KB
最終ジャッジ日時 2023-09-07 12:05:47
合計ジャッジ時間 1,098 ms
ジャッジサーバーID
(参考情報)
judge11 / judge15
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 RE -
testcase_01 RE -
testcase_02 RE -
testcase_03 RE -
testcase_04 RE -
testcase_05 RE -
testcase_06 RE -
testcase_07 RE -
testcase_08 RE -
testcase_09 RE -
testcase_10 RE -
testcase_11 RE -
testcase_12 RE -
testcase_13 RE -
権限があれば一括ダウンロードができます

ソースコード

diff #

C.printf((function (f, s)
	return f(s)
end)(function (s)
	local s0,s1,n = s:match("(%d+)%s(%d+)%s(%d+)")
	local f0,f1,r = C.atol(s0),C.atol(s1),C.atol(n)%3LL
	local f2,p = 0LL,1LL
	while f0 ~= 0LL and f1 ~= 0LL do
		f0,f1,f2,p = f0/2LL,f1/2LL,f2+p*(f0%2LL ~= f1%2LL and 1LL or 0LL),p*2LL
	end
	if f0 ~= 0LL then while f0 ~= 0LL do f0,f2,p = f0/2LL,f2+p*(f0%2LL),p*2LL end end
	if f1 ~= 0LL then while f1 ~= 0LL do f1,f2,p = f1/2LL,f2+p*(f1%2LL),p*2LL end end

	if r == 0LL then
		return "%s\n", s0
	elseif r == 1LL then
		return "%s\n", s1
	else
		return "%ld\n", f2
	end
end, io.stdin:read("*l")))
0