結果

問題 No.2699 Simple Math (Returned)
ユーザー ID 21712ID 21712
提出日時 2024-11-09 06:13:55
言語 Go
(1.22.1)
結果
AC  
実行時間 958 ms / 2,000 ms
コード長 579 bytes
コンパイル時間 17,812 ms
コンパイル使用メモリ 221,152 KB
実行使用メモリ 6,528 KB
最終ジャッジ日時 2024-11-09 06:14:23
合計ジャッジ時間 25,801 ms
ジャッジサーバーID
(参考情報)
judge2 / judge1
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 2 ms
5,248 KB
testcase_01 AC 327 ms
6,528 KB
testcase_02 AC 713 ms
6,528 KB
testcase_03 AC 324 ms
6,528 KB
testcase_04 AC 958 ms
6,528 KB
testcase_05 AC 675 ms
6,528 KB
testcase_06 AC 532 ms
6,528 KB
testcase_07 AC 843 ms
6,528 KB
testcase_08 AC 854 ms
6,528 KB
testcase_09 AC 826 ms
6,528 KB
testcase_10 AC 840 ms
6,528 KB
testcase_11 AC 822 ms
6,528 KB
権限があれば一括ダウンロードができます

ソースコード

diff #

package main

import . "fmt"
import . "os"
import bf "bufio"
import . "math/big"

func main() {
	rd:=bf.NewReader(Stdin)
	wr:=bf.NewWriter(Stdout)
	var t int
	Fscan(rd,&t)
	one:=NewInt(1)
	ten:=NewInt(10)
	mod:=NewInt(998244353)
	x,z:=new(Int),new(Int)
	for ;t>0;t-- {
		var n,m int64
		Fscan(rd,&n,&m)
		if n/m%2==0 {
			z.Exp(ten,z.SetInt64(n%m),mod)
			z.Add(z,mod).Sub(z,one).Mod(z,mod)
		} else {
			x.Exp(ten,x.SetInt64(m),mod)
			x.Add(x,one).Add(x,mod).Add(x,mod)
			z.Exp(ten,z.SetInt64(n%m),mod)
			z.Sub(x,z).Sub(z,one).Mod(z,mod)
		}
		Fprintln(wr,z)
	}
	wr.Flush()
}
0