poj 3911--Internet Service Providers【求导】

Internet Service Providers
Time Limit: 1000MS   Memory Limit: 65536K
Total Submissions: 600   Accepted: 286

Description

A group of N Internet Service Provider companies (ISPs) use a private communication channel that has a maximum capacity of C traffic units per second. Each company transfers T traffic units per second through the channel and gets a profit that is directly proportional to the factor T(C - TN). The problem is to compute T_optim, the smallest value of T that maximizes the total profit the N ISPs can get from using the channel. Notice that N, C, T, and T_optim are integer numbers.

Input

Each data set corresponds to an instance of the problem above and contains two integral numbers – N and C – with values in the range from 0 to 10 9. The input data are separated by white spaces, are correct, and terminate with an end of file.

Output

For each data set the program computes the value of T_optim according to the problem instance that corresponds to the data set. The result is printed on the standard output from the beginning of a line. There must be no empty lines on the output.

Sample Input

1 0 
0 1 
4 3 
2 8 
3 27 
25 1000000000

Sample Output

0 
0 
0 
2 
4 
20000000

Source

Southeastern European Regional Programming Contest 2008

#include<cstdio>
#include<cstring>
int main(){
	long long n, c;
	while(scanf("%lld%lld", &n, &c)!=EOF){
		if(n==0)
			printf("0\n");
		else
		{
			long long a, b, f;
			f = c/2/n;
			a = f*(c - f*n);
			b = (f+1)*(c-(f+1)*n);
			if(a >= b)
				printf("%lld\n",f);
			else
				printf("%lld\n", f+1);	
		}
	}
	return 0;
}


你可能感兴趣的:(poj 3911--Internet Service Providers【求导】)