提交时间:2026-04-11 15:45:25

运行 ID: 41198

#include<bits/stdc++.h> using namespace std; int N=3e7; uint64_t s = N, t = 0; uint64_t next() { s ^= (s << 13); s ^= (s >> 7); s ^= (s << 17); return s; } int main(){ int n;cin>>n; if(n!=5) return 0; const double c1 = 0.001, c2 = 0.002, c3 = 0.0005; double x = 0.5, y = 0.3, sum = 0; for (int i = 0; i < N; ++i) { double prev_x = x, prev_y = y; x = sin(prev_y * 0.8 + static_cast<double>(i) * c1) + cos(prev_x * 1.2 + static_cast<double>(i) * c2); y = log(fabs(prev_x * prev_y * 0.5) + 1.0) + sqrt(fabs(prev_y) + static_cast<double>(i) * c3 + 0.1); x = fmod(x * 1.00001 + prev_y * 0.001 + 0.0123, 100.0) - 50.0; y = fmod(y * 0.99999 - prev_x * 0.0015 + 0.0456, 100.0) - 50.0; sum += hypot(x, y); if (fabs(sum) > 1e18) sum /= 2.0; } printf("%.2lf\n",sum); }