Codeforces Round 1133 (Div. 1, Div. 2) is coming soon! Register here. ×

Aayuushh19's blog

By Aayuushh19, history, 4 years ago, In English

https://codeforces.me/problemset/problem/1557/A

void solve(){ ll n;cin>>n; vll arr(n); FOR(i,0,n)cin>>arr[i]; double m=*max_element(all(arr)); double sum = accumulate(all(arr),0); sum=sum-m; double avg = sum/(n-1);

cout<<fixed<<setprecision(10)<<m+avg<<endl;

}

  • Vote: I like it
  • -11
  • Vote: I do not like it

| Write comment?
»
4 years ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

Make sure everything is double. It might be due to precission errors but the idea is correct

»
4 years ago, hide # |
← Rev. 2  
Vote: I like it 0 Vote: I do not like it

wrong countertest, misread problem

»
4 years ago, hide # |
← Rev. 2  
Vote: I like it +1 Vote: I do not like it

accumulate returns an integer value by default and due to constraints sum will overflow try 0ll instead of 0 in accumulate function and you are good to go.

Your code fails on
5 1000000000 1000000000 1000000000 1000000000 1000000000