結果
問題 | No.2971 無理積分 |
ユーザー |
|
提出日時 | 2024-11-29 21:52:26 |
言語 | C++23 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 10 ms / 1,000 ms |
コード長 | 1,091 bytes |
コンパイル時間 | 5,586 ms |
コンパイル使用メモリ | 308,912 KB |
実行使用メモリ | 6,820 KB |
最終ジャッジ日時 | 2024-11-29 21:52:42 |
合計ジャッジ時間 | 7,388 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 36 |
ソースコード
#include<bits/stdc++.h>#include<atcoder/all>using namespace std;namespace my{#define LL(...) ll __VA_ARGS__;lin(__VA_ARGS__)#define FO(n) for(ll ij=n;ij--;)#define FOR(i,...) for(auto[i,i##stop,i##step]=range(0,__VA_ARGS__);i<i##stop;i+=i##step)#define fo(i,...) FO##__VA_OPT__(R)(i __VA_OPT__(,__VA_ARGS__))#define single_testcase void solve();}int main(){my::io();my::solve();}namespace my{void io(){cin.tie(nullptr)->sync_with_stdio(0);cout<<fixed<<setprecision(15);}using ld=long double;using ll=long long;template<class...A>constexpr auto range(bool s,A...a){array<ll,3>r{0,0,1};ll I=0;((r[I++]=a),...);if(!s&&I==1)swap(r[0],r[1]);r[0]-=s;return r;}constexpr char nl=10;constexpr char sp=32;void lin(auto&...a){(cin>>...>>a);}template<char c=sp>void pp(const auto&...a){ll n=sizeof...(a);((cout<<a<<string(--n>0,c)),...);cout<<nl;}single_testcasevoid solve(){LL(N);auto f=[&](ld x){return sqrtl(x*x*x+N*N*N);};ll B=1000000;ld width=ld{1}/B;ld ans=0;fo(i,B){ld a=i*width;ld b=(i+1)*width;ans+=(f(a)+f(b))*width/2;}pp(ans);}}