結果

問題 No.1895 Mod 2
ユーザー prussian_coderprussian_coder
提出日時 2022-04-09 10:49:15
言語 PyPy3
(7.3.15)
結果
AC  
実行時間 282 ms / 2,000 ms
コード長 321 bytes
コンパイル時間 317 ms
コンパイル使用メモリ 87,036 KB
実行使用メモリ 78,816 KB
最終ジャッジ日時 2023-08-19 14:44:18
合計ジャッジ時間 4,110 ms
ジャッジサーバーID
(参考情報)
judge14 / judge10
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 75 ms
75,172 KB
testcase_01 AC 227 ms
78,272 KB
testcase_02 AC 272 ms
78,144 KB
testcase_03 AC 260 ms
77,896 KB
testcase_04 AC 282 ms
78,084 KB
testcase_05 AC 278 ms
77,884 KB
testcase_06 AC 276 ms
77,788 KB
testcase_07 AC 273 ms
77,952 KB
testcase_08 AC 231 ms
78,816 KB
testcase_09 AC 245 ms
77,888 KB
testcase_10 AC 166 ms
77,748 KB
testcase_11 AC 255 ms
78,112 KB
権限があれば一括ダウンロードができます

ソースコード

diff #

N=int(input())

def lower_square(p,q):
	#p*n*n <= qを満たす最大のnを出力する
	x = int((q/p)**0.5 + 5)
	while p*x*x > q:
		x-=1
	return x
	
for _ in range(N):
	a,b=map(int,input().split())
	ans=0
	t=1
	while t<=b:
		ans += ((lower_square(t,b)+1)//2 - (lower_square(t,a-1)+1)//2)%2
		ans %=2
		t*=2
	print(ans)	
0