結果
問題 | No.1385 Simple Geometry 2 |
ユーザー |
|
提出日時 | 2021-02-07 23:04:03 |
言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 303 ms / 500 ms |
コード長 | 1,010 bytes |
コンパイル時間 | 635 ms |
コンパイル使用メモリ | 74,248 KB |
実行使用メモリ | 11,776 KB |
最終ジャッジ日時 | 2024-07-04 17:41:11 |
合計ジャッジ時間 | 18,565 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 65 |
コンパイルメッセージ
main.cpp:8:1: warning: ISO C++ forbids declaration of 'main' with no type [-Wreturn-type] 8 | main() | ^~~~
ソースコード
#include<iostream>#include<iomanip>#include<cmath>using namespace std;int N;long L,T[5<<17];double p[5<<17];main(){cin>>N>>L;for(int i=0;i<N;i++){cin>>T[i];p[i]=2*M_PI*T[i]/L;}double ans=0;/*for(int i=1;i+1<N;i++){for(int j=0;j<i;j++){for(int k=i+1;k<N;k++){double alpha=p[i]-p[j],beta=p[k]-p[i];ans+=sin(alpha)+sin(beta)-sin(alpha+beta);//ans+=sin(alpha)*sin(beta)*sin(alpha+beta);}}}for(int i=0;i<N;i++)for(int j=i+1;j<N;j++){//ans+=(i+i-j-j+N)*sin(p[j])*cos(p[i]);ans+=(i+i+N)*sin(p[j])*cos(p[i]);ans-=(j+j)*sin(p[j])*cos(p[i]);ans-=(i+i+N)*cos(p[j])*sin(p[i]);ans+=(j+j)*cos(p[j])*sin(p[i]);}*/double s1=0,s2=0,s3=0,s4=0;for(int j=0;j<N;j++){ans+=s1*sin(p[j]);ans-=(j+j)*s2*sin(p[j]);ans-=s3*cos(p[j]);ans+=(j+j)*s4*cos(p[j]);s1+=(j+j+N)*cos(p[j]);s2+=cos(p[j]);s3+=(j+j+N)*sin(p[j]);s4+=sin(p[j]);}ans*=3;ans/=N;ans/=N-1;ans/=N-2;cout<<fixed<<setprecision(16)<<ans<<endl;}