結果
問題 | No.461 三角形はいくつ? |
ユーザー |
![]() |
提出日時 | 2023-09-19 03:19:21 |
言語 | Python3 (3.13.1 + numpy 2.2.1 + scipy 1.14.1) |
結果 |
TLE
|
実行時間 | - |
コード長 | 676 bytes |
コンパイル時間 | 76 ms |
コンパイル使用メモリ | 12,672 KB |
実行使用メモリ | 18,980 KB |
最終ジャッジ日時 | 2024-07-05 15:59:55 |
合計ジャッジ時間 | 25,082 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 4 |
other | AC * 14 TLE * 1 -- * 26 |
ソースコード
import sys input = sys.stdin.readline from decimal import * getcontext().prec = 30 from bisect import bisect_left from math import gcd L=[[0] for i in range(3)] N=int(input()) for i in range(N): p,a,b=map(int,input().split()) GCD=gcd(a,b) a//=GCD b//=GCD L[p].append(Decimal(b)/Decimal(a+b)) L[0].sort() L[1].sort() L[2].sort() ANS=0 SET=set(L[2]) for x in L[0]: for y in L[1]: if x+y>1: break MAX=max(x,y) k=bisect_left(L[2],1-MAX) #print(x,y,L[2],k,1-MAX) ANS+=k z=x+y if z<1-MAX and 1-z in SET: #print(x,y,z) ANS-=1 print(ANS)