結果
問題 |
No.2909 Imaginary Summer
|
ユーザー |
👑 |
提出日時 | 2024-09-29 10:18:57 |
言語 | cLay (20241019-1) |
結果 |
AC
|
実行時間 | 5,507 ms / 6,000 ms |
コード長 | 477 bytes |
コンパイル時間 | 8,031 ms |
コンパイル使用メモリ | 222,456 KB |
実行使用メモリ | 20,552 KB |
最終ジャッジ日時 | 2024-10-02 17:48:15 |
合計ジャッジ時間 | 222,492 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 37 |
コンパイルメッセージ
main.cpp: In function ‘int main()’: main.cpp:954:19: warning: narrowing conversion of ‘((X[j] * x) + (Y[j] * y))’ from ‘long long int’ to ‘int’ [-Wnarrowing] 954 | l[j]={X[j]*x+Y[j]*y,j}; | ~~~~~~^~~~~~~ main.cpp:954:19: warning: narrowing conversion of ‘((X[j] * x) + (Y[j] * y))’ from ‘long long int’ to ‘int’ [-Wnarrowing]
ソースコード
ll@(++N,M,K),@(X,Y)[N],@(A,B)[K],L=1d3,x,y;double c;auto D=[&](ll&x,ll&y,ll i){return(x-X[i])**2+(y-Y[i])**2;};VLL o(K,1e18);VVI l(N);Timer t;t.set();Rand r;while(t.get()<5){c=r.get(0.0,3.2);x=cos(c)*L;y=sin(c)*L;rep(j,N)l[j]={X[j]*x+Y[j]*y,j};sortV(l);rep(i,K){M=A[i]*x+B[i]*y;M=bsearch_min[ll,m,0,N](M<l[m][0]);REP(j,max(0,M-L),min(N,M+L))o[i]<?=D(A[i],B[i],l[j][1]);}}c=sqrt(min[j,1,N](D(*X,*Y,j)));rep(i,K)A[i]=D(A[i],B[i],0);Wt(sum[i,0,K](min(sqrt(A[i]),c+sqrt(o[i]))*2));