結果

問題 No.3437 [Cherry 8th Tune C] Silhouette
コンテスト
ユーザー titia
提出日時 2026-01-26 06:38:56
言語 PyPy3
(7.3.17)
結果
AC  
実行時間 1,572 ms / 2,000 ms
コード長 816 bytes
記録
記録タグの例:
初AC ショートコード 純ショートコード 純主流ショートコード 最速実行時間
コンパイル時間 2,326 ms
コンパイル使用メモリ 82,000 KB
実行使用メモリ 118,884 KB
最終ジャッジ日時 2026-01-26 06:39:16
合計ジャッジ時間 19,016 ms
ジャッジサーバーID
(参考情報)
judge5 / judge3
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 1
other AC * 11
権限があれば一括ダウンロードができます

ソースコード

diff #
raw source code

import sys
import io, os
input = io.BytesIO(os.read(0,os.fstat(0).st_size)).readline

from fractions import Fraction

def calc(x,y):
    y[0]-=x[0]
    y[1]-=x[1]
    y[2]-=x[2]
    
    return [x[0]-x[2]*y[0]*Fraction(1,y[2]),x[1]-x[2]*y[1]*Fraction(1,y[2])]

def calc2(x,y,z):
    y[0]-=x[0]
    y[1]-=x[1]
    z[0]-=x[0]
    z[1]-=x[1]

    return abs(y[1]*z[0]-y[0]*z[1])

mod=998244353
INV=pow(2,mod-2,mod)

T=int(input())
LANS=[]

for tests in range(T):
    A=list(map(int,input().split()))
    B=list(map(int,input().split()))
    C=list(map(int,input().split()))
    L=list(map(int,input().split()))

    P=calc(L,A)
    Q=calc(L,B)
    R=calc(L,C)

    ANS=calc2(P,Q,R)

    ANS1=ANS.numerator
    ANS2=ANS.denominator

    LANS.append(ANS1*pow(ANS2,mod-2,mod)%mod*INV%mod)

print("\n".join(map(str,LANS)))
0