結果

問題 No.1385 Simple Geometry 2
ユーザー chocorusk
提出日時 2021-02-07 21:05:30
言語 C++17
(gcc 13.3.0 + boost 1.87.0)
結果
AC  
実行時間 128 ms / 500 ms
コード長 1,262 bytes
コンパイル時間 1,408 ms
コンパイル使用メモリ 123,848 KB
最終ジャッジ日時 2025-01-18 14:09:40
ジャッジサーバーID
(参考情報)
judge5 / judge1
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 65
権限があれば一括ダウンロードができます
コンパイルメッセージ
main.cpp: In function ‘int main()’:
main.cpp:34:14: warning: ignoring return value of ‘int scanf(const char*, ...)’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
   34 |         scanf("%lld", &t[i]);
      |         ~~~~~^~~~~~~~~~~~~~~

ソースコード

diff #
プレゼンテーションモードにする

#include <cstdio>
#include <cstring>
#include <iostream>
#include <string>
#include <cmath>
#include <bitset>
#include <vector>
#include <map>
#include <set>
#include <queue>
#include <deque>
#include <algorithm>
#include <complex>
#include <unordered_map>
#include <unordered_set>
#include <random>
#include <cassert>
#include <fstream>
#include <utility>
#include <functional>
#include <stack>
#include <array>
#include <list>
#define popcount __builtin_popcount
using namespace std;
typedef long long int ll;
typedef pair<int, int> P;
const double PI=acos(-1.0);
ll t[500050];
int main()
{
int n; ll l; cin>>n>>l;
for(int i=0; i<n; i++){
scanf("%lld", &t[i]);
}
double ans=0;
double sc=0, ss=0, sc1=0, ss1=0;
for(int i=0; i<n; i++){
double z=2*PI*t[i]/l;
ans+=n*(sin(z)*sc-cos(z)*ss);
ans-=2*i*sin(z)*sc;
ans+=2*i*cos(z)*ss;
ans+=2*sin(z)*sc1;
ans-=2*cos(z)*ss1;
sc+=cos(z);
ss+=sin(z);
sc1+=i*cos(z);
ss1+=i*sin(z);
}
/*
for(int i=0; i<n; i++){
for(int j=0; j<i; j++){
ans+=(n-2*i+2*j)*sin(PI*2*(t[i]-t[j])/l);
}
}
*/
ans/=((double)n*(n-1)*(n-2)/3);
printf("%.11lf\n", ans);
return 0;
}
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
0