2 solutions

  • 2
    @ 2024-10-5 11:10:22
    
    #include<bits/stdc++.h>
    using namespace std;
    int main()
    {
    	double x;
    	cin>>x;
    	double l=-1000,r=1000;
    	while(r-l>1e-9)
    	{
    		double mid=(r+l)/2.0;
    		if(mid*mid*mid<x)
    		{
    			l=mid;
    		}
    		else r=mid;
    	}
    	printf("%.6lf",r);
        return 0;
    }
    
    • @ 2025-11-16 14:20:04

      cout版本:

      #include<bits/stdc++.h>
      using namespace std;
      double x;
      double l=-1000,r=1000;
      int main(){
      	cin>>x;
      	while(r-l>1e-9){
      		double mid=(l+r)/2.0;
      		if(mid*mid*mid<x){
      			l=mid;
      		}else{
      			r=mid;
      		}
      	}
      	cout<<fixed<<setprecision(6)<<r;
      
      	return 0;
      }
      
      

Information

ID
142
Time
1000ms
Memory
256MiB
Difficulty
3
Tags
(None)
# Submissions
70
Accepted
28
Uploaded By