Submission #4028570
Source Code Expand
#include <string> #include <vector> #include <sstream> #include <iostream> #include <algorithm> #include <map> #include <list> #include <set> #include <numeric> #include <queue> #include <stack> #include <cstdio> #include <cmath> #include <cstdlib> #include <cctype> #include <cstring> #include <climits> #include <cfloat> #include <ctime> #include <complex> #include <cassert> #include <array> #include <bitset> #include <unordered_map> #include <random> using namespace std; typedef long long LL; typedef pair<double,LL> P; const int S=5e5+10; double ts[S]; LL vs[S]; int N; double L; int main() { cout.precision(17); cin >> N >> L; double sum=0; LL sumv=0; int s=0; vector<P> q; for(int i=0;i<N;i++){ cin >> ts[i]; cin >> vs[i]; if(s<q.size()&&q.back().first>ts[i]){ if(q.back().second+vs[i]>=L){ auto t=(vs[i]*ts[i]+(L-vs[i])*q.back().first)/L; auto v=L; sum+=t*v; sumv+=v; q.push_back(P(t,v)); } else{ sum+=ts[i]*vs[i]; sumv+=vs[i]; auto v=vs[i]+q.back().second; auto t=(vs[i]*ts[i]+q.back().second*q.back().first)/v; q.back()=P(t,v); } } else{ sum+=ts[i]*vs[i]; sumv+=vs[i]; q.push_back(P(ts[i],vs[i])); } while(sumv>L){ if(sumv-q[s].second>=L){ sumv-=q[s].second; sum-=q[s].first*q[s].second; s++; } else{ LL d=sumv-L; sumv-=d; sum-=q[s].first*d; q[s].second-=d; } } cout << sum/L << endl; } return 0; }
Submission Info
Submission Time | |
---|---|
Task | F - Dam |
User | kenimo |
Language | C++14 (GCC 5.4.1) |
Score | 0 |
Code Size | 1530 Byte |
Status | WA |
Exec Time | 2488 ms |
Memory | 25448 KB |
Judge Result
Set Name | Sample | All | ||||||
---|---|---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 0 / 900 | ||||||
Status |
|
|
Set Name | Test Cases |
---|---|
Sample | 00-00.txt, 00-01.txt, 00-02.txt |
All | 00-00.txt, 00-01.txt, 00-02.txt, 01-00.txt, 01-01.txt, 01-02.txt, 01-03.txt, 01-04.txt, 01-05.txt, 01-06.txt, 01-07.txt, 01-08.txt, 01-09.txt, 01-10.txt, 01-11.txt, 01-12.txt, 01-13.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
00-00.txt | AC | 2 ms | 2304 KB |
00-01.txt | AC | 2 ms | 2304 KB |
00-02.txt | AC | 2 ms | 2304 KB |
01-00.txt | AC | 2400 ms | 24680 KB |
01-01.txt | WA | 2449 ms | 17280 KB |
01-02.txt | AC | 2369 ms | 24936 KB |
01-03.txt | WA | 2373 ms | 21100 KB |
01-04.txt | WA | 2488 ms | 21228 KB |
01-05.txt | AC | 2399 ms | 25320 KB |
01-06.txt | AC | 2412 ms | 25192 KB |
01-07.txt | AC | 2378 ms | 25192 KB |
01-08.txt | WA | 2481 ms | 21228 KB |
01-09.txt | WA | 2383 ms | 21228 KB |
01-10.txt | AC | 2408 ms | 25192 KB |
01-11.txt | AC | 2347 ms | 25192 KB |
01-12.txt | AC | 2371 ms | 25448 KB |
01-13.txt | AC | 2454 ms | 25192 KB |